Files
lingniu-vehicle-ingest/vehicle-data-platform/apps/web/src/styles/global.css

9244 lines
175 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-customer-primary-path {
margin: 0 4px 14px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: 8px;
background: #f8fbff;
display: grid;
gap: 10px;
}
.vp-customer-primary-path-head {
display: grid;
gap: 3px;
}
.vp-customer-primary-path-head strong {
color: var(--vp-text);
font-size: 13px;
line-height: 18px;
}
.vp-customer-primary-path-head span {
color: var(--vp-text-muted);
font-size: 11px;
line-height: 16px;
}
.vp-customer-primary-path-actions {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 6px;
}
.vp-customer-primary-path-action {
min-height: 30px;
padding: 5px 8px;
border: 1px solid var(--vp-border);
border-radius: 7px;
background: #ffffff;
color: var(--vp-text-muted);
cursor: pointer;
font: inherit;
font-size: 12px;
font-weight: 600;
line-height: 18px;
text-align: center;
}
.vp-customer-primary-path-action:hover,
.vp-customer-primary-path-action:focus-visible,
.vp-customer-primary-path-action-active {
border-color: rgba(22, 100, 255, 0.38);
background: #ffffff;
color: var(--vp-primary);
outline: none;
}
.vp-customer-task-dispatch {
padding-top: 10px;
border-top: 1px solid rgba(22, 100, 255, 0.12);
display: grid;
gap: 8px;
}
.vp-customer-task-dispatch-head {
display: grid;
gap: 3px;
}
.vp-customer-task-dispatch-head strong {
color: var(--vp-text);
font-size: 13px;
line-height: 18px;
}
.vp-customer-task-dispatch-head span {
color: var(--vp-text-muted);
font-size: 11px;
line-height: 16px;
}
.vp-customer-task-dispatch-actions {
display: grid;
gap: 6px;
}
.vp-customer-task-dispatch-action {
min-height: 42px;
padding: 7px 8px;
border: 1px solid var(--vp-border);
border-radius: 7px;
background: #fff;
color: var(--vp-text);
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 1px;
}
.vp-customer-task-dispatch-action strong {
font-size: 12px;
line-height: 17px;
}
.vp-customer-task-dispatch-action span {
color: var(--vp-text-muted);
font-size: 11px;
line-height: 15px;
}
.vp-customer-task-dispatch-action:hover,
.vp-customer-task-dispatch-action:focus-visible,
.vp-customer-task-dispatch-action-active {
border-color: rgba(22, 100, 255, 0.38);
background: #ffffff;
outline: none;
}
.vp-customer-task-dispatch-action-active strong,
.vp-customer-task-dispatch-action:hover strong,
.vp-customer-task-dispatch-action:focus-visible strong {
color: var(--vp-primary);
}
.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;
display: grid;
gap: 2px;
}
.vp-nav-section-title-main {
min-width: 0;
display: flex;
align-items: center;
justify-content: space-between;
gap: 6px;
}
.vp-nav-section-title-main > span:first-child {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.vp-nav-section-title small {
color: var(--vp-text-muted);
font-size: 10px;
font-weight: 500;
line-height: 14px;
}
.vp-main {
min-width: 0;
}
.vp-topbar {
height: var(--vp-shell-header);
display: grid;
grid-template-columns: minmax(380px, 0.8fr) minmax(0, 1.2fr);
align-items: center;
gap: 16px;
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-topbar-search {
min-width: 0;
}
.vp-topbar-context {
min-width: 0;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 8px;
white-space: nowrap;
}
.vp-topbar-time-window {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 2px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #f8fafc;
}
.vp-topbar-time-window-presets {
display: inline-flex;
align-items: center;
gap: 2px;
padding-left: 2px;
}
.vp-topbar-time-window-presets button {
height: 24px;
min-width: 44px;
border: 0;
border-radius: 6px;
background: transparent;
color: var(--vp-text-muted);
font-size: 12px;
font-weight: 600;
cursor: pointer;
}
.vp-topbar-time-window-presets button:hover,
.vp-topbar-time-window-presets button:focus-visible {
background: #ffffff;
color: var(--vp-primary);
outline: none;
}
.vp-topbar-time-window label {
display: inline-flex;
align-items: center;
gap: 4px;
height: 28px;
padding: 0 6px;
color: var(--vp-text-muted);
font-size: 12px;
font-weight: 600;
}
.vp-topbar-time-window input {
width: 118px;
height: 24px;
border: 0;
border-radius: 6px;
background: #ffffff;
color: var(--vp-text);
font-size: 12px;
outline: none;
}
.vp-topbar-time-window input:focus {
box-shadow: 0 0 0 2px rgba(22, 119, 255, 0.16);
}
.vp-topbar-quick-actions {
height: 32px;
display: inline-flex;
align-items: center;
padding: 2px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #f8fafc;
}
.vp-topbar-quick-actions .semi-button {
min-width: 44px;
border: 0;
background: transparent;
color: var(--vp-text-muted);
font-size: 13px;
font-weight: 600;
}
.vp-topbar-quick-actions .semi-button:hover,
.vp-topbar-quick-actions .semi-button:focus-visible {
background: #ffffff;
color: var(--vp-primary);
}
.vp-topbar-release {
color: var(--vp-text-subtle);
font-size: 12px;
line-height: 18px;
}
.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-dashboard-secondary-details,
.vp-dashboard-evidence-details {
margin-bottom: 16px;
}
.vp-dashboard-secondary-details > summary,
.vp-dashboard-evidence-details > summary {
min-height: 56px;
padding: 12px 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
cursor: pointer;
display: grid;
gap: 4px;
}
.vp-dashboard-secondary-details > summary {
border-color: rgba(22, 100, 255, 0.18);
background: #f7fbff;
}
.vp-dashboard-secondary-details > summary::marker,
.vp-dashboard-evidence-details > summary::marker {
color: var(--vp-primary);
}
.vp-dashboard-secondary-details > summary span,
.vp-dashboard-evidence-details > summary span {
color: var(--vp-text);
font-size: 15px;
font-weight: 700;
line-height: 22px;
}
.vp-dashboard-secondary-details > summary small,
.vp-dashboard-evidence-details > summary small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-dashboard-secondary-body,
.vp-dashboard-evidence-body {
margin-top: 12px;
}
.vp-fleet-monitor {
margin-bottom: 16px;
overflow: hidden;
border-color: rgba(22, 100, 255, 0.18);
}
.vp-fleet-monitor .semi-card-body {
display: grid;
grid-template-columns: minmax(0, 1.45fr) minmax(380px, 0.68fr);
min-height: 560px;
background: #ffffff;
}
.vp-fleet-monitor-map {
position: relative;
min-width: 0;
min-height: 560px;
background: #eef5ff;
display: grid;
grid-template-rows: minmax(0, 1fr) auto;
}
.vp-fleet-monitor-copy {
position: absolute;
z-index: 2;
left: 22px;
top: 22px;
max-width: 610px;
padding: 16px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: 8px;
background: rgba(255, 255, 255, 0.94);
box-shadow: 0 12px 30px rgba(16, 24, 40, 0.12);
display: grid;
gap: 11px;
}
.vp-fleet-monitor-copy .semi-typography {
font-size: 14px;
line-height: 22px;
}
.vp-fleet-monitor-map-canvas {
min-height: 430px;
height: 430px;
}
.vp-fleet-monitor-stats {
min-height: 130px;
padding: 14px;
border-top: 1px solid rgba(22, 100, 255, 0.14);
background: #ffffff;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-fleet-monitor-stat {
min-height: 102px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-fleet-monitor-stat:hover,
.vp-fleet-monitor-stat:focus-visible,
.vp-fleet-monitor-action:hover,
.vp-fleet-monitor-action:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-fleet-monitor-stat strong {
color: var(--vp-text);
font-size: 22px;
line-height: 28px;
font-weight: 700;
}
.vp-fleet-monitor-stat span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-fleet-monitor-panel {
min-width: 0;
padding: 18px;
border-left: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 14px;
align-content: start;
}
.vp-fleet-monitor-panel-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.vp-fleet-task-router {
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
gap: 10px;
}
.vp-fleet-task-router-head {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 12px;
}
.vp-fleet-task-router-head .semi-typography-secondary {
font-size: 12px;
line-height: 18px;
}
.vp-fleet-task-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 8px;
}
.vp-fleet-task-item {
min-height: 122px;
padding: 10px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 7px;
align-content: start;
}
.vp-fleet-task-item:hover,
.vp-fleet-task-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
background: #f5f9ff;
box-shadow: 0 0 0 3px rgba(22, 100, 255, 0.06);
outline: none;
}
.vp-fleet-task-item strong {
color: var(--vp-text);
font-size: 15px;
line-height: 21px;
font-weight: 700;
word-break: break-word;
}
.vp-fleet-task-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 17px;
}
.vp-fleet-task-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-customer-problem-desk {
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
gap: 10px;
}
.vp-customer-problem-head {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 12px;
}
.vp-customer-problem-head > div {
display: grid;
gap: 2px;
}
.vp-customer-problem-head .semi-typography-secondary,
.vp-customer-problem-principle {
font-size: 12px;
line-height: 18px;
}
.vp-customer-problem-grid {
display: grid;
gap: 8px;
}
.vp-customer-problem-item {
min-height: 76px;
padding: 10px 12px;
border: 1px solid rgba(22, 100, 255, 0.14);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 7px 10px;
align-items: start;
}
.vp-customer-problem-item:hover,
.vp-customer-problem-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-customer-problem-item div {
display: grid;
gap: 4px;
}
.vp-customer-problem-item strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
font-weight: 700;
}
.vp-customer-problem-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-customer-problem-item em {
grid-column: 1 / -1;
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-vehicle-priority-queue {
padding: 12px;
border: 1px solid rgba(255, 127, 0, 0.2);
border-radius: var(--vp-radius);
background: #fffaf3;
display: grid;
gap: 10px;
}
.vp-vehicle-priority-queue-head {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 12px;
}
.vp-vehicle-priority-queue-head > div {
display: grid;
gap: 2px;
}
.vp-vehicle-priority-queue-head .semi-typography-secondary {
font-size: 12px;
line-height: 18px;
}
.vp-vehicle-priority-queue-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px;
}
.vp-vehicle-priority-queue-item {
min-height: 118px;
padding: 10px 12px;
border: 1px solid rgba(255, 127, 0, 0.2);
border-radius: 8px;
background: #fff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 7px;
align-content: start;
}
.vp-vehicle-priority-queue-item:hover,
.vp-vehicle-priority-queue-item:focus-visible {
border-color: rgba(255, 127, 0, 0.48);
box-shadow: 0 0 0 3px rgba(255, 127, 0, 0.08);
outline: none;
}
.vp-vehicle-priority-queue-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
}
.vp-vehicle-priority-queue-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-vehicle-priority-queue-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-fleet-next-actions {
display: grid;
gap: 9px;
}
.vp-fleet-next-action {
min-height: 98px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #ffffff;
color: inherit;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
grid-template-columns: 70px minmax(0, 1fr);
gap: 7px 10px;
align-content: start;
}
.vp-fleet-next-action:hover,
.vp-fleet-next-action:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-fleet-next-action strong {
color: var(--vp-text);
font-size: 15px;
line-height: 22px;
font-weight: 700;
}
.vp-fleet-next-action span {
grid-column: 1 / -1;
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-fleet-next-action em {
grid-column: 1 / -1;
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-fleet-monitor-actions {
display: grid;
gap: 8px;
}
.vp-fleet-monitor-action {
min-height: 70px;
padding: 11px 12px;
border: 1px solid rgba(22, 100, 255, 0.14);
border-radius: var(--vp-radius);
background: #ffffff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
grid-template-columns: 72px 78px minmax(0, 1fr);
gap: 10px;
align-items: start;
}
.vp-fleet-monitor-action span {
color: var(--vp-text-muted);
font-size: 12px;
font-weight: 700;
line-height: 18px;
}
.vp-fleet-monitor-action strong {
color: var(--vp-primary);
font-size: 14px;
line-height: 20px;
}
.vp-fleet-monitor-action small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-fleet-monitor-action em {
grid-column: 1 / -1;
color: var(--vp-text);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-fleet-question-grid {
display: grid;
gap: 8px;
}
.vp-fleet-question-item {
min-height: 58px;
padding: 10px 12px;
border: 1px solid rgba(22, 100, 255, 0.14);
border-radius: var(--vp-radius);
background: #ffffff;
color: inherit;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 5px 10px;
align-items: start;
}
.vp-fleet-question-item:hover,
.vp-fleet-question-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-fleet-question-item strong {
color: var(--vp-text);
font-size: 13px;
line-height: 19px;
}
.vp-fleet-question-item span {
grid-column: 1 / 2;
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-fleet-question-item .semi-tag {
grid-column: 2 / 3;
grid-row: 1 / span 2;
align-self: center;
}
.vp-fleet-monitor-time {
padding: 12px;
border: 1px solid rgba(0, 164, 184, 0.22);
border-radius: var(--vp-radius);
background: #f3fbfc;
display: grid;
gap: 9px;
}
.vp-fleet-monitor-time strong {
color: var(--vp-text);
font-size: 15px;
line-height: 22px;
word-break: break-word;
}
.vp-fleet-monitor-time span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-fleet-monitor-trust {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 8px;
}
.vp-fleet-monitor-trust-item {
min-height: 92px;
padding: 10px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
gap: 5px;
align-content: start;
}
.vp-fleet-monitor-trust-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-fleet-monitor-trust-item strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
}
.vp-fleet-monitor-trust-item small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 17px;
}
.vp-customer-delivery-board {
margin-bottom: 16px;
overflow: hidden;
border-color: rgba(22, 100, 255, 0.16);
}
.vp-customer-delivery-board .semi-card-body {
display: grid;
grid-template-columns: minmax(280px, 0.58fr) minmax(0, 1.42fr);
background: #ffffff;
}
.vp-customer-delivery-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-customer-delivery-grid {
padding: 16px;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-customer-delivery-item {
min-height: 150px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
}
.vp-customer-delivery-item:hover,
.vp-customer-delivery-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-customer-delivery-item strong {
color: var(--vp-text);
font-size: 17px;
line-height: 23px;
font-weight: 700;
word-break: break-word;
}
.vp-customer-delivery-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-customer-delivery-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-customer-cockpit {
margin-bottom: 16px;
overflow: hidden;
border-color: rgba(22, 100, 255, 0.18);
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1.38fr);
}
.vp-customer-cockpit-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 12px;
align-content: center;
}
.vp-customer-cockpit-summary .semi-typography {
color: var(--vp-text);
line-height: 28px;
}
.vp-customer-cockpit-actions {
padding: 14px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-customer-cockpit-action {
min-height: 142px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.vp-customer-cockpit-action:hover,
.vp-customer-cockpit-action:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
box-shadow: 0 0 0 3px rgba(22, 100, 255, 0.08);
outline: none;
}
.vp-customer-cockpit-action strong {
color: var(--vp-text);
font-size: 18px;
font-weight: 700;
line-height: 24px;
word-break: break-word;
}
.vp-customer-cockpit-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-customer-cockpit-action em {
color: var(--vp-primary);
font-size: 15px;
font-style: normal;
font-weight: 600;
line-height: 22px;
}
.vp-customer-vehicle-monitor {
margin-bottom: 16px;
border: 1px solid rgba(11, 159, 119, 0.18);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
grid-template-columns: minmax(300px, 0.66fr) minmax(0, 1.34fr);
overflow: hidden;
}
.vp-customer-vehicle-monitor-copy {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f6fbf9;
display: grid;
gap: 10px;
align-content: start;
}
.vp-customer-vehicle-monitor-copy strong {
color: var(--vp-text);
font-size: 18px;
line-height: 26px;
}
.vp-customer-vehicle-monitor-copy span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-customer-vehicle-monitor-grid {
padding: 14px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-customer-vehicle-monitor-item {
min-height: 136px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.14);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.vp-customer-vehicle-monitor-item:hover,
.vp-customer-vehicle-monitor-item:focus-visible {
border-color: rgba(11, 159, 119, 0.38);
background: #f5fbf9;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-customer-vehicle-monitor-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-customer-vehicle-monitor-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-customer-vehicle-monitor-item em {
align-self: end;
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-customer-cockpit .semi-card-body {
display: grid;
grid-template-columns: minmax(0, 1.08fr) minmax(420px, 0.92fr);
min-height: 360px;
background: #ffffff;
}
.vp-customer-cockpit-main {
min-width: 0;
padding: 24px;
background:
linear-gradient(90deg, rgba(22, 100, 255, 0.08) 0%, rgba(255, 255, 255, 0) 62%),
#ffffff;
display: grid;
gap: 20px;
align-content: start;
}
.vp-customer-cockpit-copy {
max-width: 760px;
display: grid;
gap: 14px;
}
.vp-customer-cockpit-copy .semi-typography {
max-width: 720px;
font-size: 14px;
line-height: 22px;
}
.vp-customer-cockpit-metrics {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-customer-cockpit-metric {
min-height: 130px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: rgba(255, 255, 255, 0.82);
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
align-content: start;
gap: 10px;
}
.vp-customer-cockpit-metric:hover,
.vp-customer-cockpit-metric:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-customer-cockpit-metric strong {
color: var(--vp-text);
font-size: 26px;
line-height: 32px;
}
.vp-customer-cockpit-metric span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-customer-cockpit-rail {
min-width: 0;
padding: 18px;
border-left: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 14px;
}
.vp-customer-cockpit-workflows {
display: grid;
gap: 8px;
}
.vp-customer-cockpit-workflow {
min-height: 58px;
padding: 10px 12px;
border: 1px solid rgba(22, 100, 255, 0.14);
border-radius: 8px;
background: #ffffff;
cursor: pointer;
text-align: left;
font: inherit;
display: grid;
grid-template-columns: 76px 84px minmax(0, 1fr) auto;
gap: 10px;
align-items: center;
}
.vp-customer-cockpit-workflow:hover,
.vp-customer-cockpit-workflow:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
background: #f5f9ff;
outline: none;
}
.vp-customer-cockpit-workflow span {
color: var(--vp-text-muted);
font-size: 12px;
font-weight: 700;
line-height: 18px;
}
.vp-customer-cockpit-workflow strong {
color: #1664ff;
font-size: 14px;
line-height: 20px;
}
.vp-customer-cockpit-workflow small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-customer-cockpit-workflow em {
color: var(--vp-text);
font-size: 12px;
font-style: normal;
font-weight: 700;
white-space: nowrap;
}
.vp-customer-cockpit-trust {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 8px;
}
.vp-customer-cockpit-trust-item {
min-height: 88px;
padding: 10px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #ffffff;
display: grid;
gap: 5px;
align-content: start;
}
.vp-customer-cockpit-trust-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-customer-cockpit-trust-item strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
}
.vp-customer-cockpit-trust-item small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 17px;
}
.vp-customer-hero {
margin-bottom: 16px;
overflow: hidden;
}
.vp-customer-hero .semi-card-body {
display: grid;
grid-template-columns: minmax(0, 1.6fr) minmax(360px, 0.7fr);
min-height: 420px;
}
.vp-customer-hero-map {
position: relative;
min-width: 0;
min-height: 420px;
background: #eef5ff;
}
.vp-customer-hero-copy {
position: absolute;
z-index: 2;
left: 24px;
top: 24px;
max-width: 560px;
padding: 18px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: 8px;
background: rgba(255, 255, 255, 0.92);
box-shadow: 0 12px 32px rgba(16, 24, 40, 0.12);
display: grid;
gap: 12px;
}
.vp-customer-hero-map-canvas {
min-height: 420px;
height: 420px;
border: 0;
border-radius: 0;
}
.vp-customer-hero-side {
min-width: 0;
padding: 22px;
background: #ffffff;
border-left: 1px solid var(--vp-border);
display: grid;
align-content: start;
gap: 16px;
}
.vp-customer-hero-side-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
}
.vp-customer-journey {
display: grid;
gap: 8px;
}
.vp-customer-journey-item {
min-height: 74px;
padding: 10px 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
grid-template-columns: 36px 1fr auto;
gap: 4px 10px;
align-items: center;
}
.vp-customer-journey-item:hover,
.vp-customer-journey-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-customer-journey-item span {
grid-row: span 2;
width: 28px;
height: 28px;
border-radius: 50%;
background: #1664ff;
color: #fff;
font-size: 12px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
}
.vp-customer-journey-item strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
}
.vp-customer-journey-item em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 600;
}
.vp-customer-journey-item small {
grid-column: 2 / -1;
color: var(--vp-text-muted);
font-size: 12px;
line-height: 17px;
}
.vp-customer-health-grid {
display: grid;
gap: 10px;
}
.vp-customer-health-item {
min-height: 78px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
display: grid;
grid-template-columns: auto 1fr;
gap: 6px 10px;
font: inherit;
}
.vp-customer-health-item:hover,
.vp-customer-health-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
background: #f5f9ff;
outline: none;
}
.vp-customer-health-item strong {
justify-self: end;
color: var(--vp-text);
font-size: 22px;
line-height: 24px;
}
.vp-customer-health-item span {
grid-column: 1 / -1;
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-customer-workflow-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-customer-workflow-item {
min-height: 150px;
padding: 16px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #ffffff;
cursor: pointer;
text-align: left;
font: inherit;
display: grid;
align-content: space-between;
gap: 12px;
}
.vp-customer-workflow-item:hover,
.vp-customer-workflow-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-customer-workflow-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
}
.vp-command-center-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-command-center-item {
min-height: 166px;
padding: 16px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #ffffff;
display: grid;
align-content: space-between;
gap: 12px;
}
.vp-command-center-head {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-command-center-head strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-command-center-item .semi-typography {
font-size: 13px;
line-height: 20px;
}
.vp-customer-task-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-customer-task-item {
min-height: 172px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
display: grid;
gap: 12px;
align-content: space-between;
}
.vp-customer-task-head {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-customer-task-head strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-customer-task-item .semi-typography {
font-size: 13px;
line-height: 20px;
}
.vp-service-entry-board {
display: grid;
grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
gap: 14px;
}
.vp-service-entry-summary {
min-height: 188px;
padding: 16px;
border: 1px solid rgba(10, 168, 107, 0.24);
border-radius: 8px;
background: #f5fbf8;
display: grid;
align-content: start;
gap: 12px;
}
.vp-service-entry-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-service-entry-item {
min-height: 188px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
align-content: start;
gap: 10px;
}
.vp-service-entry-item:hover,
.vp-service-entry-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
background: #f5f9ff;
outline: none;
}
.vp-service-entry-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-service-entry-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-service-entry-item em {
align-self: end;
color: #1664ff;
font-size: 13px;
font-style: normal;
font-weight: 700;
}
.vp-time-monitor-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
margin-top: 14px;
}
.vp-time-monitor-actions {
min-height: 36px;
margin-bottom: 8px;
display: flex;
align-items: center;
gap: 8px;
flex-wrap: wrap;
}
.vp-time-monitor-item {
min-height: 132px;
padding: 16px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #ffffff;
cursor: pointer;
text-align: left;
font: inherit;
display: grid;
align-content: space-between;
gap: 14px;
}
.vp-time-monitor-item:hover,
.vp-time-monitor-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
background: #f7fbff;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-time-review-package {
margin-top: 14px;
display: grid;
grid-template-columns: minmax(300px, 0.86fr) minmax(0, 1.14fr);
gap: 12px;
}
.vp-time-review-summary {
min-height: 180px;
padding: 14px;
border: 1px solid rgba(0, 164, 184, 0.28);
border-radius: 8px;
background: #f3fbfc;
display: grid;
gap: 12px;
align-content: start;
}
.vp-time-review-summary .semi-typography {
line-height: 21px;
}
.vp-time-review-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-time-review-item {
min-height: 180px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-time-review-item strong {
color: var(--vp-text);
font-size: 20px;
font-weight: 700;
line-height: 26px;
word-break: break-word;
}
.vp-time-review-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-time-audit-strip {
margin-top: 14px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: 8px;
background: #fbfcff;
display: grid;
grid-template-columns: minmax(240px, 0.56fr) minmax(0, 1.44fr);
gap: 12px;
}
.vp-time-audit-head {
min-width: 0;
display: grid;
gap: 8px;
align-content: start;
}
.vp-time-audit-head .semi-typography {
line-height: 21px;
}
.vp-time-audit-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-time-audit-item {
min-height: 122px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #ffffff;
display: grid;
gap: 8px;
align-content: start;
}
.vp-time-audit-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-time-audit-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-time-monitor-workbench {
margin-top: 14px;
display: grid;
grid-template-columns: minmax(260px, 0.68fr) minmax(0, 1.32fr);
gap: 12px;
}
.vp-time-monitor-scope {
min-height: 168px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.24);
border-radius: 8px;
background: #f6f9ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-time-monitor-scope strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-time-monitor-work-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-time-monitor-work-item {
min-height: 168px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-time-monitor-work-item:hover,
.vp-time-monitor-work-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f7fbff;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-time-monitor-work-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-time-monitor-work-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-time-monitor-work-item em {
color: var(--vp-primary);
font-style: normal;
font-size: 13px;
font-weight: 600;
line-height: 20px;
}
.vp-time-delivery-strip {
margin-top: 14px;
display: grid;
grid-template-columns: minmax(260px, 0.58fr) minmax(0, 1.42fr);
gap: 12px;
}
.vp-time-delivery-summary {
min-height: 148px;
padding: 14px;
border: 1px solid rgba(10, 168, 107, 0.26);
border-radius: 8px;
background: #f6fbf8;
display: grid;
gap: 10px;
align-content: start;
}
.vp-time-delivery-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
}
.vp-time-delivery-item {
min-height: 148px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-time-delivery-item:hover,
.vp-time-delivery-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f7fbff;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-time-delivery-item strong {
color: var(--vp-text);
font-size: 19px;
line-height: 24px;
word-break: break-word;
}
.vp-time-delivery-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-time-delivery-item em {
color: var(--vp-primary);
font-style: normal;
font-size: 13px;
font-weight: 600;
line-height: 20px;
align-self: end;
}
.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-customer-board {
margin-bottom: 16px;
overflow: hidden;
}
.vp-realtime-customer-board .semi-card-body {
display: grid;
grid-template-columns: minmax(280px, 0.58fr) minmax(0, 1fr);
}
.vp-realtime-customer-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-realtime-question-board {
display: grid;
grid-template-columns: minmax(260px, 0.62fr) minmax(0, 1.38fr);
gap: 14px;
padding: 16px;
border-bottom: 1px solid var(--vp-border);
background: #ffffff;
}
.vp-realtime-question-summary {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f7faff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-realtime-question-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-realtime-question-item {
min-height: 142px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-realtime-question-item:hover,
.vp-realtime-question-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-realtime-question-item:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-realtime-question-item strong {
color: var(--vp-text);
font-size: 17px;
line-height: 23px;
font-weight: 700;
word-break: break-word;
}
.vp-realtime-question-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-realtime-question-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-realtime-next-actions {
padding: 16px;
border-bottom: 1px solid var(--vp-border);
background: #ffffff;
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 10px;
}
.vp-realtime-next-action {
min-height: 126px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 7px;
align-content: start;
}
.vp-realtime-next-action:hover,
.vp-realtime-next-action:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-realtime-next-action:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-realtime-next-action strong {
color: var(--vp-text);
font-size: 15px;
line-height: 22px;
}
.vp-realtime-next-action span {
color: var(--vp-primary);
font-size: 14px;
line-height: 20px;
font-weight: 700;
word-break: break-word;
}
.vp-realtime-next-action small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-realtime-next-action em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-realtime-map-dispatch {
padding: 16px;
border-bottom: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
gap: 14px;
}
.vp-realtime-map-dispatch-copy {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-realtime-map-dispatch-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-realtime-map-dispatch-item {
min-height: 146px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #ffffff;
color: inherit;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-realtime-map-dispatch-item:hover,
.vp-realtime-map-dispatch-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-realtime-map-dispatch-item:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-realtime-map-dispatch-item strong {
color: var(--vp-text);
font-size: 16px;
line-height: 22px;
word-break: break-word;
}
.vp-realtime-map-dispatch-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-realtime-map-dispatch-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-realtime-customer-steps {
padding: 16px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
background: #ffffff;
}
.vp-realtime-customer-step {
min-height: 152px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-realtime-customer-step:hover,
.vp-realtime-customer-step:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-realtime-customer-step:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-realtime-customer-step > span {
width: 28px;
height: 28px;
border-radius: 50%;
background: #1664ff;
color: #fff;
font-size: 12px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
}
.vp-realtime-customer-step strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
}
.vp-realtime-customer-step small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-realtime-customer-step em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 600;
align-self: end;
}
.vp-realtime-single-snapshot {
margin-bottom: 16px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #fff;
display: grid;
grid-template-columns: minmax(280px, 0.56fr) minmax(0, 1.44fr);
overflow: hidden;
}
.vp-realtime-single-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 11px;
align-content: start;
}
.vp-realtime-single-grid {
padding: 16px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-realtime-single-item {
min-height: 146px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.14);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
}
.vp-realtime-single-item:hover,
.vp-realtime-single-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-realtime-single-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-realtime-single-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-realtime-single-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-realtime-single-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-time-window-monitor {
margin-bottom: 16px;
overflow: hidden;
}
.vp-time-window-monitor .semi-card-body {
display: grid;
grid-template-columns: minmax(280px, 0.44fr) minmax(0, 1fr);
padding: 0;
}
.vp-time-window-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f9fbff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-time-window-main {
padding: 16px;
display: grid;
gap: 14px;
background: #fff;
}
.vp-time-window-controls {
display: grid;
grid-template-columns: minmax(180px, 1.1fr) minmax(190px, 1fr) minmax(190px, 1fr) auto;
gap: 10px;
align-items: end;
}
.vp-time-window-target,
.vp-time-window-controls label {
min-height: 72px;
padding: 10px 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
display: grid;
gap: 4px;
align-content: center;
}
.vp-time-window-target span,
.vp-time-window-controls label span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 16px;
}
.vp-time-window-target strong {
color: var(--vp-text);
font-size: 15px;
line-height: 20px;
}
.vp-time-window-target small {
color: var(--vp-text-tertiary);
font-size: 12px;
}
.vp-time-window-controls input {
width: 100%;
border: 0;
outline: none;
background: transparent;
color: var(--vp-text);
font: inherit;
font-size: 14px;
line-height: 20px;
}
.vp-time-window-controls input:focus {
color: #1664ff;
}
.vp-time-window-presets {
display: flex;
flex-wrap: wrap;
gap: 6px;
justify-content: flex-end;
}
.vp-time-window-actions {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-time-window-action {
min-height: 128px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-time-window-action:hover,
.vp-time-window-action:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-time-window-action:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-time-window-action strong {
color: var(--vp-text);
font-size: 17px;
line-height: 22px;
}
.vp-time-window-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-time-window-action em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 600;
align-self: end;
}
.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-realtime-impact-board {
display: grid;
grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-realtime-impact-summary {
min-height: 156px;
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-realtime-impact-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-realtime-impact-item {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-realtime-impact-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.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-vehicle-service-desk {
display: grid;
grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
gap: 16px;
}
.vp-vehicle-service-summary {
min-height: 168px;
padding: 12px;
border: 1px solid rgba(10, 168, 107, 0.28);
border-radius: var(--vp-radius);
background: #f4fbf8;
display: grid;
gap: 10px;
align-content: start;
}
.vp-vehicle-service-summary strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-vehicle-service-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-service-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-service-action {
min-height: 168px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-vehicle-service-action:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-vehicle-service-action:not(:disabled):hover,
.vp-vehicle-service-action:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-vehicle-service-action strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-vehicle-service-action span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-asset-console {
margin-bottom: 16px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
grid-template-columns: minmax(280px, 0.58fr) minmax(0, 1.42fr);
overflow: hidden;
}
.vp-vehicle-asset-console-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 12px;
align-content: center;
}
.vp-vehicle-asset-console-summary strong {
color: var(--vp-text);
font-size: 20px;
font-weight: 700;
line-height: 28px;
}
.vp-vehicle-asset-console-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-asset-console-grid {
padding: 14px;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-vehicle-asset-console-item {
min-height: 142px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.vp-vehicle-asset-console-item:hover,
.vp-vehicle-asset-console-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
box-shadow: 0 0 0 3px rgba(22, 100, 255, 0.08);
outline: none;
}
.vp-vehicle-asset-console-item strong {
color: var(--vp-text);
font-size: 20px;
font-weight: 700;
line-height: 26px;
word-break: break-word;
}
.vp-vehicle-asset-console-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-vehicle-asset-console-item em {
color: var(--vp-primary);
font-size: 13px;
font-style: normal;
font-weight: 700;
line-height: 20px;
}
.vp-vehicle-lookup-strip {
display: grid;
gap: 14px;
}
.vp-vehicle-lookup-head {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 16px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: 8px;
background: #f6f9ff;
}
.vp-vehicle-lookup-head > div {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-vehicle-lookup-head strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
}
.vp-vehicle-lookup-head span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-lookup-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-lookup-item {
min-height: 128px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
display: grid;
gap: 8px;
align-content: start;
}
.vp-vehicle-lookup-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-vehicle-lookup-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-asset-board {
display: grid;
grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1.38fr);
gap: 16px;
}
.vp-vehicle-asset-summary {
min-height: 156px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.22);
border-radius: var(--vp-radius);
background: #f6f9ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-vehicle-asset-summary strong {
color: var(--vp-text);
font-size: 18px;
line-height: 25px;
font-weight: 700;
}
.vp-vehicle-asset-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-asset-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-asset-item {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 9px;
align-content: start;
}
.vp-vehicle-asset-item:hover,
.vp-vehicle-asset-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
background: #f5f9ff;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-vehicle-asset-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-vehicle-asset-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-vehicle-asset-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
align-self: end;
}
.vp-vehicle-question-board {
display: grid;
grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1.38fr);
gap: 16px;
}
.vp-vehicle-question-summary {
min-height: 156px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.22);
border-radius: var(--vp-radius);
background: #f6f9ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-vehicle-question-summary strong {
color: var(--vp-text);
font-size: 19px;
line-height: 25px;
word-break: break-word;
}
.vp-vehicle-question-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-question-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-question-item {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 9px;
align-content: start;
}
.vp-vehicle-question-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-vehicle-question-item:not(:disabled):hover,
.vp-vehicle-question-item:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-vehicle-question-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-vehicle-question-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-question-item em {
color: #1664ff;
font-size: 12px;
line-height: 18px;
font-style: normal;
font-weight: 600;
align-self: end;
}
.vp-vehicle-decision-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-decision-item {
min-height: 172px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-vehicle-decision-head {
display: grid;
gap: 8px;
min-width: 0;
}
.vp-vehicle-decision-head strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-vehicle-decision-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-package-board {
display: grid;
grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1.38fr);
gap: 16px;
}
.vp-vehicle-package-summary {
min-height: 172px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.24);
border-radius: var(--vp-radius);
background: #f6f9ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-vehicle-package-summary strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-vehicle-package-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-package-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-package-item {
min-height: 172px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 9px;
align-content: start;
}
.vp-vehicle-package-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-vehicle-package-item:not(:disabled):hover,
.vp-vehicle-package-item:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-vehicle-package-item strong {
color: var(--vp-text);
font-size: 19px;
line-height: 24px;
word-break: break-word;
}
.vp-vehicle-package-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-vehicle-package-item em {
color: #1664ff;
font-size: 12px;
line-height: 18px;
font-style: normal;
font-weight: 600;
align-self: end;
}
.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-page {
display: grid;
gap: 14px;
}
.vp-map-commandbar {
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: var(--vp-surface);
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap;
}
.vp-map-refresh-actions {
min-height: 32px;
align-items: center;
}
.vp-map-service-rail {
display: grid;
grid-template-columns: minmax(300px, 0.64fr) minmax(0, 1.36fr);
gap: 12px;
}
.vp-map-service-rail-summary {
min-height: 174px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.22);
border-radius: var(--vp-radius);
background: #f5f9ff;
display: grid;
align-content: start;
gap: 10px;
}
.vp-map-service-rail-summary .semi-typography {
line-height: 21px;
}
.vp-map-service-rail-actions {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-map-service-rail-action {
min-height: 174px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
align-content: start;
gap: 8px;
}
.vp-map-service-rail-action:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-map-service-rail-action:not(:disabled):hover,
.vp-map-service-rail-action:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-map-service-rail-action strong {
color: var(--vp-text);
font-size: 17px;
line-height: 23px;
font-weight: 700;
word-break: break-word;
}
.vp-map-service-rail-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-map-service-rail-action em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-map-decision-board {
display: grid;
grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
gap: 12px;
}
.vp-map-decision-summary {
min-height: 170px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f5f9ff;
display: grid;
align-content: start;
gap: 10px;
}
.vp-map-decision-summary .semi-typography {
line-height: 21px;
}
.vp-map-decision-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-map-decision-item {
min-height: 170px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
align-content: start;
gap: 10px;
}
.vp-map-decision-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-map-decision-item:not(:disabled):hover,
.vp-map-decision-item:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-map-decision-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-map-decision-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-map-decision-item em {
align-self: end;
color: #1664ff;
font-size: 13px;
font-style: normal;
font-weight: 700;
}
.vp-map-kpi-strip {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-map-kpi-item {
min-height: 96px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
align-content: space-between;
gap: 8px;
}
.vp-map-kpi-item:hover,
.vp-map-kpi-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-map-kpi-item strong {
color: var(--vp-text);
font-size: 26px;
line-height: 32px;
font-weight: 700;
}
.vp-map-kpi-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-map-selected-service-strip {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
grid-template-columns: minmax(280px, 0.64fr) minmax(0, 1.36fr);
gap: 14px;
align-items: stretch;
}
.vp-map-selected-service-summary {
min-width: 0;
display: grid;
align-content: start;
gap: 8px;
}
.vp-map-selected-service-summary .semi-typography {
font-size: 13px;
line-height: 20px;
}
.vp-map-selected-service-actions {
min-width: 0;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-map-selected-service-action {
min-width: 0;
min-height: 104px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
cursor: pointer;
text-align: left;
font: inherit;
display: grid;
align-content: space-between;
gap: 8px;
}
.vp-map-selected-service-action:hover,
.vp-map-selected-service-action:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
background: #f5f9ff;
outline: none;
}
.vp-map-selected-service-action:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-map-selected-service-action strong {
color: var(--vp-primary);
font-size: 14px;
line-height: 20px;
}
.vp-map-selected-service-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-map-task-strip {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-map-task-item {
min-height: 158px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: var(--vp-surface);
display: grid;
align-content: space-between;
gap: 12px;
}
.vp-map-task-head {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-map-task-head strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-map-task-item .semi-typography {
font-size: 13px;
line-height: 20px;
}
.vp-map-field-command {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.2);
border-radius: var(--vp-radius);
background: #f7faff;
display: grid;
grid-template-columns: minmax(300px, 0.76fr) minmax(0, 1.24fr);
gap: 12px;
}
.vp-map-field-command-summary {
display: grid;
gap: 10px;
align-content: start;
}
.vp-map-field-command-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-map-field-command-item {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-map-field-command-item:hover,
.vp-map-field-command-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-map-field-command-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-map-field-command-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-map-field-command-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-map-field-command-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-map-area-monitor {
padding: 14px;
border: 1px solid rgba(11, 159, 119, 0.2);
border-radius: var(--vp-radius);
background: #f5fbf9;
display: grid;
grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
gap: 12px;
}
.vp-map-area-monitor-summary {
display: grid;
gap: 10px;
align-content: start;
}
.vp-map-area-monitor-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-map-area-monitor-item {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfefc;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-map-area-monitor-item:hover,
.vp-map-area-monitor-item:focus-visible {
border-color: rgba(11, 159, 119, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-map-area-monitor-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-map-area-monitor-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-map-area-monitor-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-map-area-monitor-item em {
color: #0b9f77;
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-map-dispatch-actions {
padding: 14px;
border: 1px solid rgba(255, 127, 0, 0.2);
border-radius: var(--vp-radius);
background: #fffaf3;
display: grid;
grid-template-columns: minmax(300px, 0.7fr) minmax(0, 1.3fr);
gap: 12px;
}
.vp-map-dispatch-actions-summary {
display: grid;
gap: 10px;
align-content: start;
}
.vp-map-dispatch-actions-summary .semi-typography {
font-size: 14px;
line-height: 22px;
}
.vp-map-dispatch-actions-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-map-dispatch-action {
min-height: 142px;
padding: 12px;
border: 1px solid rgba(255, 127, 0, 0.22);
border-radius: var(--vp-radius);
background: #fff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-map-dispatch-action:hover,
.vp-map-dispatch-action:focus-visible {
border-color: rgba(255, 127, 0, 0.48);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-map-dispatch-action:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-map-dispatch-action strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-map-dispatch-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-map-dispatch-action em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-map-customer-package {
padding: 14px;
border: 1px solid rgba(0, 164, 184, 0.24);
border-radius: var(--vp-radius);
background: #f3fbfc;
display: grid;
grid-template-columns: minmax(300px, 0.82fr) minmax(0, 1.18fr);
gap: 12px;
}
.vp-map-customer-package-summary {
min-width: 0;
display: grid;
gap: 10px;
align-content: start;
}
.vp-map-customer-package-summary .semi-typography {
line-height: 21px;
}
.vp-map-customer-package-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-map-customer-package-item {
min-height: 134px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 8px;
align-content: start;
}
.vp-map-customer-package-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-map-customer-package-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-map-vehicle-workbench {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f8fbff;
display: grid;
gap: 12px;
}
.vp-map-vehicle-workbench-head {
min-width: 0;
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
flex-wrap: wrap;
}
.vp-map-vehicle-workbench-head > div {
min-width: 0;
display: grid;
gap: 4px;
}
.vp-map-vehicle-work-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-map-vehicle-work-item {
min-width: 0;
min-height: 132px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: var(--vp-surface);
color: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: space-between;
cursor: pointer;
}
.vp-map-vehicle-work-item:hover,
.vp-map-vehicle-work-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-map-vehicle-work-item:disabled {
cursor: not-allowed;
opacity: 0.62;
box-shadow: none;
}
.vp-map-vehicle-work-title {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-map-vehicle-work-title strong {
color: var(--vp-text);
font-size: 16px;
line-height: 22px;
word-break: break-word;
}
.vp-map-vehicle-work-item > span:not(.vp-map-vehicle-work-title) {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-map-vehicle-work-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-map-workspace {
min-height: 680px;
display: grid;
grid-template-columns: minmax(0, 1fr) 340px;
gap: 14px;
}
.vp-map-canvas-panel {
min-width: 0;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: var(--vp-surface);
overflow: hidden;
}
.vp-map-canvas-toolbar {
min-height: 54px;
padding: 12px 14px;
border-bottom: 1px solid var(--vp-border);
background: #fbfcff;
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
flex-wrap: wrap;
}
.vp-map-customer-canvas {
height: 626px;
}
.vp-map-customer-side {
min-width: 0;
display: grid;
gap: 12px;
align-content: start;
}
.vp-map-customer-card {
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: var(--vp-surface);
display: grid;
gap: 10px;
}
.vp-map-selected-card {
border-color: rgba(22, 100, 255, 0.28);
background: #f5f9ff;
}
.vp-map-card-title {
color: var(--vp-text);
font-size: 13px;
line-height: 20px;
font-weight: 700;
}
.vp-map-selected-metrics {
display: grid;
grid-template-columns: auto minmax(0, 1fr);
gap: 7px 10px;
font-size: 12px;
line-height: 18px;
}
.vp-map-selected-metrics span {
color: var(--vp-text-muted);
}
.vp-map-selected-metrics strong {
color: var(--vp-text);
font-weight: 600;
word-break: break-word;
}
.vp-map-attention-row,
.vp-map-vehicle-row {
width: 100%;
padding: 10px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius-sm);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-map-attention-row {
display: grid;
gap: 6px;
}
.vp-map-attention-row > div {
display: grid;
min-width: 0;
}
.vp-map-vehicle-row {
min-height: 42px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
}
.vp-map-vehicle-row span {
min-width: 0;
overflow: hidden;
color: var(--vp-text);
font-weight: 600;
text-overflow: ellipsis;
white-space: nowrap;
}
.vp-map-attention-row:hover,
.vp-map-attention-row:focus-visible,
.vp-map-vehicle-row:hover,
.vp-map-vehicle-row:focus-visible,
.vp-map-vehicle-row-selected {
border-color: rgba(22, 100, 255, 0.5);
background: #f5f9ff;
outline: none;
}
.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-decision-board {
display: grid;
grid-template-columns: minmax(280px, 0.74fr) minmax(0, 1.26fr);
gap: 16px;
}
.vp-alert-decision-summary {
min-height: 176px;
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-alert-decision-summary strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-alert-decision-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-decision-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-alert-decision-item {
min-height: 176px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-alert-decision-item:disabled {
cursor: not-allowed;
opacity: 0.68;
}
.vp-alert-decision-item:not(:disabled):hover,
.vp-alert-decision-item:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-alert-decision-item > div {
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.vp-alert-decision-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-alert-decision-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-sla-board {
display: grid;
grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
gap: 16px;
}
.vp-alert-sla-summary {
min-height: 164px;
padding: 12px;
border: 1px solid rgba(255, 176, 31, 0.34);
border-radius: var(--vp-radius);
background: #fffaf0;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-sla-summary strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-alert-sla-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-sla-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-alert-sla-item {
min-height: 164px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-alert-sla-item:hover,
.vp-alert-sla-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-alert-sla-item > div {
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.vp-alert-sla-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-alert-sla-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-channel-board {
display: grid;
grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-alert-channel-summary {
min-height: 168px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.2);
border-radius: var(--vp-radius);
background: #f5f9ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-channel-summary strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-alert-channel-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-channel-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
}
.vp-alert-channel-item {
min-height: 168px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 9px;
align-content: start;
}
.vp-alert-channel-item:hover,
.vp-alert-channel-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-alert-channel-item > div {
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.vp-alert-channel-item strong {
color: var(--vp-text);
font-size: 16px;
line-height: 22px;
font-weight: 700;
word-break: break-word;
}
.vp-alert-channel-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-channel-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-alert-recovery-board {
display: grid;
grid-template-columns: minmax(280px, 0.76fr) minmax(0, 1.24fr);
gap: 16px;
}
.vp-alert-recovery-summary {
min-height: 168px;
padding: 12px;
border: 1px solid rgba(25, 164, 96, 0.24);
border-radius: var(--vp-radius);
background: #f4fbf7;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-recovery-summary strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-alert-recovery-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-recovery-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-alert-recovery-item {
min-height: 168px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-recovery-item:hover,
.vp-alert-recovery-item:focus-visible {
border-color: rgba(25, 164, 96, 0.42);
background: #f4fbf7;
outline: none;
}
.vp-alert-recovery-item > div {
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.vp-alert-recovery-item strong {
color: var(--vp-text);
font-size: 17px;
line-height: 23px;
word-break: break-word;
}
.vp-alert-recovery-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-center-board {
display: grid;
grid-template-columns: minmax(280px, 0.7fr) minmax(0, 1.3fr);
gap: 16px;
}
.vp-alert-center-summary {
min-height: 168px;
padding: 12px;
border: 1px solid rgba(245, 158, 11, 0.32);
border-radius: var(--vp-radius);
background: #fff8ed;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-center-summary strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-alert-center-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-center-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-alert-center-item {
min-height: 168px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-alert-center-item:disabled {
cursor: not-allowed;
opacity: 0.68;
}
.vp-alert-center-item:not(:disabled):hover,
.vp-alert-center-item:not(:disabled):focus-visible {
border-color: rgba(245, 158, 11, 0.48);
background: #fff8ed;
outline: none;
}
.vp-alert-center-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
word-break: break-word;
}
.vp-alert-center-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-vehicle-task-board {
display: grid;
grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-alert-vehicle-focus {
min-height: 172px;
padding: 12px;
border: 1px solid rgba(239, 68, 68, 0.24);
border-radius: var(--vp-radius);
background: #fff7f7;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-vehicle-focus strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-alert-vehicle-focus span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-alert-vehicle-task-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-alert-vehicle-task-item {
min-height: 172px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-vehicle-task-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-alert-vehicle-task-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.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-impact-board {
display: grid;
grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-alert-impact-summary {
min-height: 148px;
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-alert-impact-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-alert-impact-item {
min-height: 148px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-alert-impact-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.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-notification-customer-board {
margin-bottom: 16px;
overflow: hidden;
}
.vp-notification-customer-board .semi-card-body {
display: grid;
grid-template-columns: minmax(280px, 0.56fr) minmax(0, 1fr);
}
.vp-notification-customer-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-notification-customer-steps {
padding: 16px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
background: #fff;
}
.vp-notification-customer-step {
min-height: 158px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-notification-customer-step:hover,
.vp-notification-customer-step:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-notification-customer-step > span {
width: 28px;
height: 28px;
border-radius: 50%;
background: #1664ff;
color: #fff;
font-size: 12px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
}
.vp-notification-customer-step strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
}
.vp-notification-customer-step small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-notification-customer-step em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 600;
align-self: end;
}
.vp-notification-question-board {
display: grid;
grid-template-columns: minmax(260px, 0.58fr) minmax(0, 1.42fr);
gap: 16px;
}
.vp-notification-question-summary {
min-height: 160px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.24);
border-radius: var(--vp-radius);
background: #f6f9ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-notification-question-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-notification-question-item {
min-height: 160px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 9px;
align-content: start;
}
.vp-notification-question-item:hover,
.vp-notification-question-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-notification-question-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-notification-question-item small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-notification-question-item em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 600;
align-self: end;
}
.vp-notification-coverage-board {
display: grid;
grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-notification-coverage-summary {
min-height: 166px;
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-notification-coverage-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-notification-coverage-item {
min-height: 166px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-notification-coverage-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-notification-owner-list {
margin-top: 12px;
display: grid;
gap: 10px;
}
.vp-notification-owner-item {
min-height: 72px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fff;
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 12px;
align-items: center;
}
.vp-notification-reachability-board {
display: grid;
grid-template-columns: minmax(260px, 0.56fr) minmax(0, 1.44fr);
gap: 16px;
}
.vp-notification-reachability-summary {
min-height: 176px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.28);
border-radius: var(--vp-radius);
background: #f8fbff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-notification-reachability-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
}
.vp-notification-reachability-item {
min-height: 176px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-notification-reachability-item strong {
color: var(--vp-text);
font-size: 19px;
line-height: 24px;
font-weight: 700;
}
.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-mileage-console {
display: grid;
grid-template-columns: minmax(0, 1fr) 300px;
gap: 16px;
}
.vp-mileage-reconciliation-desk {
margin-top: 16px;
border: 1px solid rgba(11, 159, 119, 0.2);
border-radius: var(--vp-radius);
background: #fff;
display: grid;
grid-template-columns: minmax(280px, 0.56fr) minmax(0, 1.44fr);
overflow: hidden;
}
.vp-mileage-reconciliation-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f5fbf9;
display: grid;
gap: 11px;
align-content: start;
}
.vp-mileage-reconciliation-grid {
padding: 16px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-mileage-reconciliation-item {
min-height: 148px;
padding: 12px;
border: 1px solid rgba(11, 159, 119, 0.18);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
}
.vp-mileage-reconciliation-item:hover,
.vp-mileage-reconciliation-item:focus-visible {
border-color: rgba(11, 159, 119, 0.46);
background: #f5fbf9;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-mileage-reconciliation-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-mileage-reconciliation-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-mileage-reconciliation-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-mileage-reconciliation-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-mileage-delivery-console {
margin-top: 16px;
margin-bottom: 16px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #fff;
display: grid;
grid-template-columns: minmax(280px, 0.58fr) minmax(0, 1.42fr);
overflow: hidden;
}
.vp-mileage-delivery-console-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f7fbff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-mileage-delivery-console-summary strong {
color: var(--vp-text);
font-size: 18px;
line-height: 26px;
}
.vp-mileage-delivery-console-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-mileage-delivery-console-grid {
padding: 16px;
background: #fff;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-mileage-delivery-console-item {
min-height: 142px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.14);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
}
.vp-mileage-delivery-console-item:hover,
.vp-mileage-delivery-console-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-mileage-delivery-console-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-mileage-delivery-console-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-mileage-delivery-console-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
align-self: end;
}
.vp-mileage-customer-query-board {
margin-top: 16px;
overflow: hidden;
}
.vp-mileage-customer-query-board .semi-card-body {
display: grid;
grid-template-columns: minmax(280px, 0.58fr) minmax(0, 1fr);
}
.vp-mileage-customer-query-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-mileage-customer-query-steps {
padding: 16px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
background: #fff;
}
.vp-mileage-customer-query-step {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-mileage-customer-query-step:hover,
.vp-mileage-customer-query-step:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-mileage-customer-query-step:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-mileage-customer-query-step > span {
width: 28px;
height: 28px;
border-radius: 50%;
background: #1664ff;
color: #fff;
font-size: 12px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
}
.vp-mileage-customer-query-step strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
}
.vp-mileage-customer-query-step small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-mileage-customer-query-step em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 600;
align-self: end;
}
.vp-mileage-question-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-question-item {
min-height: 118px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 9px;
align-content: start;
}
.vp-mileage-question-item:hover,
.vp-mileage-question-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-mileage-question-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-mileage-question-item strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
word-break: break-word;
}
.vp-mileage-question-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-mileage-delivery-nav {
display: grid;
gap: 14px;
}
.vp-mileage-delivery-nav-summary {
display: grid;
gap: 9px;
max-width: 860px;
}
.vp-mileage-delivery-nav-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-delivery-nav-item {
min-height: 142px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
}
.vp-mileage-delivery-nav-item:hover,
.vp-mileage-delivery-nav-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-mileage-delivery-nav-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-mileage-delivery-nav-item strong {
color: var(--vp-text);
font-size: 17px;
line-height: 23px;
font-weight: 700;
word-break: break-word;
}
.vp-mileage-delivery-nav-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-mileage-delivery-nav-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-mileage-delivery-board {
display: grid;
grid-template-columns: minmax(280px, 0.64fr) minmax(0, 1.36fr);
gap: 16px;
}
.vp-mileage-decision-board {
display: grid;
grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-mileage-decision-summary {
min-height: 206px;
padding: 14px;
border: 1px solid rgba(11, 159, 119, 0.22);
border-radius: var(--vp-radius);
background: #f5fbf9;
display: grid;
gap: 10px;
align-content: start;
}
.vp-mileage-decision-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-decision-item {
min-width: 0;
min-height: 206px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
display: grid;
gap: 10px;
align-content: start;
cursor: pointer;
}
.vp-mileage-decision-item:hover,
.vp-mileage-decision-item:focus-visible {
border-color: rgba(11, 159, 119, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-mileage-decision-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-mileage-decision-item span {
color: var(--vp-muted);
font-size: 12px;
line-height: 18px;
}
.vp-mileage-decision-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-mileage-delivery-summary {
min-height: 186px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.2);
border-radius: var(--vp-radius);
background: #f6f9ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-mileage-delivery-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-delivery-item {
min-width: 0;
min-height: 186px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
display: grid;
gap: 10px;
align-content: start;
cursor: pointer;
}
.vp-mileage-delivery-item:hover,
.vp-mileage-delivery-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-mileage-delivery-item span {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-mileage-delivery-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-mileage-delivery-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-mileage-next-actions {
display: grid;
grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1.38fr);
gap: 16px;
}
.vp-mileage-next-summary {
min-height: 178px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f7faff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-mileage-next-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-next-action {
min-width: 0;
min-height: 178px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 10px;
align-content: start;
}
.vp-mileage-next-action:hover,
.vp-mileage-next-action:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-mileage-next-action:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-mileage-next-action strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-mileage-next-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-mileage-next-action em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-mileage-console-main {
min-width: 0;
display: grid;
gap: 14px;
}
.vp-mileage-console-head {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 12px;
}
.vp-mileage-kpi-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-kpi-item {
min-height: 112px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
align-content: space-between;
gap: 8px;
}
.vp-mileage-kpi-item:hover,
.vp-mileage-kpi-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-mileage-kpi-item strong {
color: var(--vp-text);
font-size: 24px;
line-height: 30px;
font-weight: 700;
word-break: break-word;
}
.vp-mileage-kpi-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-mileage-task-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-task-item {
min-height: 164px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
align-content: space-between;
gap: 12px;
}
.vp-mileage-task-head {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-mileage-task-head strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-mileage-task-item .semi-typography {
font-size: 13px;
line-height: 20px;
}
.vp-mileage-mini-charts {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px;
}
.vp-mileage-mini-title {
margin-bottom: 8px;
color: var(--vp-text);
font-size: 13px;
line-height: 20px;
font-weight: 700;
}
.vp-mileage-mini-chart {
min-height: 170px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 8px;
align-content: start;
}
.vp-mileage-mini-row {
display: grid;
grid-template-columns: 92px minmax(0, 1fr) 86px;
gap: 8px;
align-items: center;
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-mileage-mini-row span,
.vp-mileage-mini-row strong {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.vp-mileage-mini-row strong {
color: var(--vp-text);
font-weight: 600;
text-align: right;
}
.vp-mileage-mini-row div {
height: 8px;
border-radius: 999px;
background: rgba(22, 100, 255, 0.08);
overflow: hidden;
}
.vp-mileage-mini-row i {
display: block;
height: 100%;
border-radius: inherit;
background: var(--vp-primary);
}
.vp-mileage-mini-row-green {
background: var(--vp-success) !important;
}
.vp-mileage-console-side {
min-width: 0;
display: grid;
gap: 12px;
align-content: start;
}
.vp-mileage-side-card {
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
}
.vp-mileage-side-card .semi-button {
justify-self: start;
}
.vp-mileage-side-title {
color: var(--vp-text);
font-size: 13px;
line-height: 20px;
font-weight: 700;
}
.vp-online-ops-board {
display: grid;
grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-online-ops-summary {
min-height: 166px;
padding: 12px;
border: 1px solid rgba(10, 168, 107, 0.28);
border-radius: var(--vp-radius);
background: #f4fbf8;
display: grid;
gap: 10px;
align-content: start;
}
.vp-online-ops-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-online-ops-item {
min-height: 166px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-online-ops-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.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-impact-board {
display: grid;
grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-stat-impact-summary {
min-height: 156px;
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-impact-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-stat-impact-item {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-stat-impact-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.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-trip-workbench {
margin-top: 16px;
overflow: hidden;
border-color: rgba(22, 100, 255, 0.18);
}
.vp-trip-workbench .semi-card-body {
display: grid;
grid-template-columns: minmax(0, 1.45fr) minmax(360px, 0.72fr);
min-height: 560px;
background: #ffffff;
}
.vp-trip-workbench-map {
position: relative;
min-width: 0;
min-height: 560px;
background: #eef5ff;
display: grid;
grid-template-rows: minmax(0, 1fr) auto;
}
.vp-trip-workbench-copy {
position: absolute;
z-index: 2;
left: 22px;
top: 22px;
max-width: 620px;
padding: 16px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: rgba(255, 255, 255, 0.94);
box-shadow: 0 12px 30px rgba(16, 24, 40, 0.12);
display: grid;
gap: 11px;
}
.vp-trip-workbench-copy .semi-typography {
font-size: 14px;
line-height: 22px;
}
.vp-trip-workbench-map-canvas {
min-height: 430px;
height: 430px;
}
.vp-trip-workbench-facts {
min-height: 130px;
padding: 14px;
border-top: 1px solid rgba(22, 100, 255, 0.14);
background: #ffffff;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-trip-workbench-fact {
min-height: 102px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-trip-workbench-fact:hover,
.vp-trip-workbench-fact:focus-visible,
.vp-trip-action:hover,
.vp-trip-action:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-trip-workbench-fact strong {
color: var(--vp-text);
font-size: 21px;
line-height: 27px;
font-weight: 700;
}
.vp-trip-workbench-fact span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-trip-workbench-side {
min-width: 0;
padding: 18px;
border-left: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 14px;
align-content: start;
}
.vp-trip-current-card {
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #ffffff;
display: grid;
gap: 10px;
}
.vp-trip-current-metrics {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px;
}
.vp-trip-current-metrics span {
min-height: 54px;
padding: 9px;
border: 1px solid var(--vp-border);
border-radius: 7px;
background: #fbfcff;
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
display: grid;
gap: 3px;
}
.vp-trip-current-metrics strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
}
.vp-trip-actions {
display: grid;
gap: 9px;
}
.vp-trip-action {
min-height: 92px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #ffffff;
color: inherit;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 7px;
align-content: start;
}
.vp-trip-action:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-trip-action strong {
color: var(--vp-text);
font-size: 16px;
line-height: 22px;
font-weight: 700;
word-break: break-word;
}
.vp-trip-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-trip-action em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-trajectory-impact-board {
display: grid;
grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-trajectory-impact-summary {
min-height: 172px;
padding: 12px;
border: 1px solid rgba(10, 168, 107, 0.28);
border-radius: var(--vp-radius);
background: #f4fbf8;
display: grid;
gap: 10px;
align-content: start;
}
.vp-trajectory-impact-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-trajectory-impact-item {
min-height: 172px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-trajectory-impact-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-history-time-window-board {
display: grid;
grid-template-columns: minmax(280px, 0.68fr) minmax(0, 1.32fr);
gap: 16px;
}
.vp-history-time-window-summary {
min-height: 176px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.2);
border-radius: var(--vp-radius);
background: #f5f9ff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-history-time-window-summary .semi-typography {
font-size: 13px;
line-height: 20px;
}
.vp-history-time-window-grid {
min-width: 0;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-time-window-item {
min-height: 176px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-time-window-item:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-history-time-window-item:not(:disabled):hover,
.vp-history-time-window-item:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-history-time-window-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-history-time-window-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-time-window-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-history-export-center {
margin-top: 16px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #fff;
display: grid;
grid-template-columns: minmax(300px, 0.64fr) minmax(0, 1.36fr);
overflow: hidden;
box-shadow: var(--vp-shadow-sm);
}
.vp-history-export-center-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-export-center-summary strong {
color: var(--vp-text);
font-size: 18px;
line-height: 26px;
font-weight: 700;
}
.vp-history-export-center-summary span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-history-export-center-grid {
padding: 16px;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 10px;
}
.vp-history-export-center-item {
min-height: 136px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-export-center-item:hover,
.vp-history-export-center-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-history-export-center-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-export-center-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
}
.vp-history-export-center-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-export-center-item em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 700;
line-height: 18px;
}
.vp-history-customer-export-board {
margin-top: 16px;
overflow: hidden;
}
.vp-history-customer-export-board .semi-card-body {
display: grid;
grid-template-columns: minmax(280px, 0.58fr) minmax(0, 1fr);
}
.vp-history-customer-export-summary {
padding: 18px;
border-right: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-history-customer-export-steps {
padding: 16px;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
background: #fff;
}
.vp-history-customer-export-step {
min-height: 156px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
text-align: left;
cursor: pointer;
font: inherit;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-customer-export-step:hover,
.vp-history-customer-export-step:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: var(--vp-shadow-sm);
outline: none;
}
.vp-history-customer-export-step:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-customer-export-step > span {
width: 28px;
height: 28px;
border-radius: 50%;
background: #1664ff;
color: #fff;
font-size: 12px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
}
.vp-history-customer-export-step strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
}
.vp-history-customer-export-step small {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-customer-export-step em {
color: #1664ff;
font-style: normal;
font-size: 12px;
font-weight: 600;
align-self: end;
}
.vp-history-report-templates {
display: grid;
grid-template-columns: minmax(300px, 0.7fr) minmax(0, 1.3fr);
gap: 14px;
}
.vp-history-report-summary {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f7faff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-report-template-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-report-template {
min-height: 158px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-report-template:hover,
.vp-history-report-template:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-history-report-template:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-report-template strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-history-report-template span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-report-template em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-history-report-cadence {
display: grid;
grid-template-columns: minmax(300px, 0.7fr) minmax(0, 1.3fr);
gap: 14px;
}
.vp-history-report-cadence-summary {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f7faff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-report-cadence-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-report-cadence-item {
min-height: 158px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-report-cadence-item:hover,
.vp-history-report-cadence-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-history-report-cadence-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-report-cadence-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-history-report-cadence-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-report-cadence-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-history-saved-report {
display: grid;
grid-template-columns: minmax(300px, 0.7fr) minmax(0, 1.3fr);
gap: 14px;
}
.vp-history-saved-report-summary {
padding: 14px;
border: 1px solid rgba(14, 173, 105, 0.2);
border-radius: var(--vp-radius);
background: #f5fcf8;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-saved-report-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-saved-report-item {
min-height: 158px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfefc;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-saved-report-item:hover,
.vp-history-saved-report-item:focus-visible {
border-color: rgba(14, 173, 105, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-history-saved-report-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-saved-report-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-history-saved-report-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-saved-report-item em {
color: #0a8f56;
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-history-question-board {
display: grid;
grid-template-columns: minmax(300px, 0.7fr) minmax(0, 1.3fr);
gap: 14px;
}
.vp-history-question-summary {
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f7faff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-question-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-question-item {
min-height: 150px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-question-item:hover,
.vp-history-question-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-history-question-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-question-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-history-question-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-question-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-history-replay-nav {
display: grid;
grid-template-columns: minmax(300px, 0.7fr) minmax(0, 1.3fr);
gap: 14px;
}
.vp-history-replay-nav-summary {
min-height: 158px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.18);
border-radius: var(--vp-radius);
background: #f7faff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-replay-nav-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-replay-nav-item {
min-height: 158px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
font: inherit;
cursor: pointer;
display: grid;
gap: 8px;
align-content: start;
}
.vp-history-replay-nav-item:hover,
.vp-history-replay-nav-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-history-replay-nav-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-replay-nav-item strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
font-weight: 700;
word-break: break-word;
}
.vp-history-replay-nav-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-history-replay-nav-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-history-query-workbench {
display: grid;
grid-template-columns: minmax(260px, 0.68fr) minmax(0, 1.32fr);
gap: 16px;
}
.vp-history-query-summary {
min-height: 176px;
padding: 12px;
border: 1px solid rgba(58, 104, 240, 0.24);
border-radius: var(--vp-radius);
background: #f6f8ff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-query-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-query-item {
min-height: 176px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-query-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-trajectory-decision-board {
display: grid;
grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-trajectory-decision-summary {
min-height: 206px;
padding: 14px;
border: 1px solid rgba(11, 159, 119, 0.22);
border-radius: var(--vp-radius);
background: #f5fbf9;
display: grid;
gap: 10px;
align-content: start;
}
.vp-trajectory-decision-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-trajectory-decision-item {
min-width: 0;
min-height: 206px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
display: grid;
gap: 10px;
align-content: start;
cursor: pointer;
}
.vp-trajectory-decision-item:hover,
.vp-trajectory-decision-item:focus-visible {
border-color: rgba(11, 159, 119, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-trajectory-decision-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-trajectory-decision-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-trajectory-decision-item span {
color: var(--vp-muted);
font-size: 12px;
line-height: 18px;
}
.vp-trajectory-decision-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-history-package-board {
display: grid;
grid-template-columns: minmax(280px, 0.62fr) minmax(0, 1.38fr);
gap: 16px;
}
.vp-history-package-summary {
min-height: 190px;
padding: 14px;
border: 1px solid rgba(34, 197, 94, 0.22);
border-radius: var(--vp-radius);
background: #f7fdf9;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-package-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-package-item {
min-width: 0;
min-height: 190px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
text-align: left;
display: grid;
gap: 10px;
align-content: start;
cursor: pointer;
}
.vp-history-package-item:hover,
.vp-history-package-item:focus-visible {
border-color: rgba(22, 100, 255, 0.42);
box-shadow: 0 10px 24px rgba(24, 39, 75, 0.08);
outline: none;
}
.vp-history-package-item:disabled {
cursor: not-allowed;
opacity: 0.62;
box-shadow: none;
}
.vp-history-package-item span {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-history-package-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.vp-history-package-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
}
.vp-history-checklist-grid {
display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));
gap: 12px;
}
.vp-history-checklist-item {
min-height: 178px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
font: inherit;
cursor: pointer;
}
.vp-history-checklist-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-history-checklist-item:not(:disabled):hover,
.vp-history-checklist-item:not(:disabled):focus-visible {
border-color: rgba(0, 164, 184, 0.42);
background: #f5fbff;
outline: none;
}
.vp-history-checklist-item strong {
color: var(--vp-text);
font-size: 19px;
line-height: 25px;
font-weight: 700;
word-break: break-word;
}
.vp-history-checklist-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-history-checklist-item em {
color: var(--vp-cyan);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-history-delivery-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-history-delivery-item {
min-height: 184px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-history-delivery-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
}
.vp-history-delivery-item strong {
color: var(--vp-text);
font-size: 20px;
line-height: 26px;
font-weight: 700;
word-break: break-word;
}
.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-service-dossier {
display: grid;
grid-template-columns: minmax(300px, 0.95fr) minmax(0, 1.45fr);
gap: 16px;
}
.vp-unified-service-board {
display: grid;
grid-template-columns: minmax(320px, 0.82fr) minmax(0, 1.18fr);
gap: 16px;
}
.vp-vehicle-live-view {
margin-top: 16px;
overflow: hidden;
border-color: rgba(22, 100, 255, 0.18);
}
.vp-vehicle-live-view .semi-card-body {
display: grid;
grid-template-columns: minmax(0, 1.2fr) minmax(340px, 0.8fr);
padding: 0;
}
.vp-vehicle-live-main {
min-width: 0;
display: grid;
grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.75fr);
gap: 16px;
padding: 18px;
background: linear-gradient(90deg, rgba(22, 100, 255, 0.08), rgba(255, 255, 255, 0) 60%), #fff;
}
.vp-vehicle-live-copy {
min-width: 0;
display: grid;
gap: 12px;
align-content: start;
}
.vp-vehicle-live-copy .semi-typography {
font-size: 14px;
line-height: 22px;
}
.vp-single-vehicle-action-bar {
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: rgba(255, 255, 255, 0.86);
display: grid;
gap: 10px;
}
.vp-single-vehicle-action-head {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 12px;
}
.vp-single-vehicle-action-head > div {
display: grid;
gap: 2px;
}
.vp-single-vehicle-action-head strong {
color: var(--vp-text);
font-size: 15px;
line-height: 21px;
}
.vp-single-vehicle-action-head span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-single-vehicle-action-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 8px;
}
.vp-single-vehicle-action-item {
min-height: 132px;
padding: 10px;
border: 1px solid var(--vp-border);
border-radius: 8px;
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 7px;
align-content: start;
}
.vp-single-vehicle-action-item:hover,
.vp-single-vehicle-action-item:focus-visible {
border-color: rgba(22, 100, 255, 0.45);
box-shadow: 0 0 0 3px rgba(22, 100, 255, 0.06);
outline: none;
}
.vp-single-vehicle-action-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-single-vehicle-action-item strong {
color: var(--vp-text);
font-size: 15px;
line-height: 20px;
font-weight: 700;
word-break: break-word;
}
.vp-single-vehicle-action-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-single-vehicle-action-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-vehicle-live-facts {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 8px;
}
.vp-vehicle-live-facts div {
min-height: 72px;
padding: 10px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 4px;
align-content: start;
}
.vp-vehicle-live-facts span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-vehicle-live-facts strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
font-weight: 700;
word-break: break-word;
}
.vp-vehicle-live-map {
min-height: 280px;
height: 280px;
}
.vp-vehicle-live-actions {
padding: 18px;
border-left: 1px solid var(--vp-border);
background: #f8fbff;
display: grid;
gap: 10px;
}
.vp-vehicle-live-action {
min-height: 92px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fff;
text-align: left;
color: inherit;
font: inherit;
cursor: pointer;
display: grid;
gap: 7px;
align-content: start;
}
.vp-vehicle-live-action:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-vehicle-live-action:not(:disabled):hover,
.vp-vehicle-live-action:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-vehicle-live-action strong {
color: var(--vp-text);
font-size: 16px;
line-height: 22px;
font-weight: 700;
word-break: break-word;
}
.vp-vehicle-live-action span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-vehicle-live-action em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-vehicle-archive-summary {
margin-top: 16px;
border-color: rgba(17, 24, 39, 0.1);
}
.vp-vehicle-archive-summary-main {
display: grid;
grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
gap: 16px;
}
.vp-vehicle-archive-summary-copy {
min-width: 0;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-vehicle-archive-summary-copy .semi-typography {
font-size: 14px;
line-height: 22px;
}
.vp-vehicle-archive-summary-grid {
min-width: 0;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 10px;
}
.vp-vehicle-archive-summary-item {
min-height: 128px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 7px;
align-content: start;
}
.vp-vehicle-archive-summary-item:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-vehicle-archive-summary-item:not(:disabled):hover,
.vp-vehicle-archive-summary-item:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-vehicle-archive-summary-item strong {
color: var(--vp-text);
font-size: 16px;
line-height: 22px;
font-weight: 700;
word-break: break-word;
}
.vp-vehicle-archive-summary-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-vehicle-archive-summary-item em {
color: var(--vp-primary);
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 18px;
}
.vp-vehicle-question-grid {
display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-question-item {
min-height: 118px;
padding: 12px;
border: 1px solid rgba(22, 100, 255, 0.16);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
cursor: pointer;
font: inherit;
text-align: left;
display: grid;
gap: 9px;
align-content: start;
}
.vp-vehicle-question-item:disabled {
cursor: not-allowed;
opacity: 0.58;
}
.vp-vehicle-question-item:not(:disabled):hover,
.vp-vehicle-question-item:not(:disabled):focus-visible {
border-color: rgba(22, 100, 255, 0.42);
background: #f5f9ff;
outline: none;
}
.vp-vehicle-question-item strong {
color: var(--vp-text);
font-size: 14px;
line-height: 20px;
word-break: break-word;
}
.vp-vehicle-question-item span {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
word-break: break-word;
}
.vp-unified-service-main {
min-height: 178px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.28);
border-radius: var(--vp-radius);
background: #f5f9ff;
display: grid;
gap: 12px;
align-content: start;
}
.vp-unified-service-main .semi-typography {
line-height: 21px;
}
.vp-unified-service-actions {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.vp-unified-service-grid {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 12px;
}
.vp-unified-service-item {
min-height: 178px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-unified-service-item strong {
color: var(--vp-text);
font-size: 21px;
line-height: 27px;
font-weight: 700;
word-break: break-word;
}
.vp-unified-service-item .semi-typography {
line-height: 20px;
}
.vp-service-dossier-main {
min-height: 210px;
padding: 14px;
border: 1px solid rgba(22, 100, 255, 0.24);
border-radius: var(--vp-radius);
background: #f6f9ff;
display: grid;
gap: 14px;
align-content: start;
}
.vp-service-dossier-meta {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 10px;
}
.vp-service-dossier-meta div {
min-height: 58px;
padding: 9px 10px;
border: 1px solid var(--vp-border);
border-radius: 6px;
background: #fff;
display: grid;
gap: 4px;
align-content: start;
}
.vp-service-dossier-meta span,
.vp-service-dossier-asset .semi-typography {
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-service-dossier-meta strong {
color: var(--vp-text);
font-size: 13px;
line-height: 19px;
font-weight: 600;
word-break: break-word;
}
.vp-service-dossier-assets {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-service-dossier-asset {
min-height: 210px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-service-dossier-asset strong {
color: var(--vp-text);
font-size: 24px;
line-height: 30px;
font-weight: 700;
word-break: break-word;
}
.vp-service-dossier-missing {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 12px;
}
.vp-customer-service-package {
display: grid;
grid-template-columns: minmax(320px, 0.82fr) minmax(0, 1.18fr);
gap: 16px;
}
.vp-customer-service-summary {
min-height: 210px;
padding: 14px;
border: 1px solid rgba(0, 164, 184, 0.28);
border-radius: var(--vp-radius);
background: #f3fbfc;
display: grid;
gap: 12px;
align-content: start;
}
.vp-customer-service-summary .semi-typography {
line-height: 21px;
}
.vp-customer-service-links {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.vp-customer-service-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-customer-service-item {
min-height: 210px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
color: inherit;
font: inherit;
cursor: pointer;
}
.vp-customer-service-item:disabled {
cursor: not-allowed;
opacity: 0.62;
}
.vp-customer-service-item:not(:disabled):hover,
.vp-customer-service-item:not(:disabled):focus-visible {
border-color: rgba(0, 164, 184, 0.42);
background: #f5fbff;
outline: none;
}
.vp-customer-service-item strong {
color: var(--vp-text);
font-size: 22px;
line-height: 28px;
font-weight: 700;
word-break: break-word;
}
.vp-customer-service-item span {
color: var(--vp-text-muted);
font-size: 13px;
line-height: 20px;
}
.vp-customer-service-item em {
color: var(--vp-cyan);
font-size: 13px;
font-style: normal;
font-weight: 600;
line-height: 20px;
}
.vp-vehicle-task-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 12px;
}
.vp-vehicle-task-item {
min-height: 172px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 12px;
align-content: space-between;
}
.vp-vehicle-task-head {
min-width: 0;
display: grid;
gap: 8px;
}
.vp-vehicle-task-head strong {
color: var(--vp-text);
font-size: 18px;
line-height: 24px;
word-break: break-word;
}
.vp-vehicle-task-item .semi-typography {
font-size: 13px;
line-height: 20px;
}
.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-source-readiness-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 12px;
}
.vp-source-readiness-item,
.vp-source-readiness-empty {
min-height: 188px;
padding: 12px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
display: grid;
gap: 10px;
align-content: start;
}
.vp-source-readiness-head {
display: grid;
gap: 8px;
}
.vp-source-readiness-metrics {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 8px;
}
.vp-source-readiness-metrics > div {
min-width: 0;
padding: 8px;
border-radius: var(--vp-radius-sm);
background: #ffffff;
border: 1px solid rgba(15, 23, 42, 0.06);
}
.vp-source-readiness-metrics span {
display: block;
color: var(--vp-text-muted);
font-size: 12px;
line-height: 18px;
}
.vp-source-readiness-metrics strong {
display: block;
margin-top: 2px;
color: var(--vp-text);
font-size: 15px;
line-height: 22px;
}
.vp-source-readiness-actions {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.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-data-flow-grid {
display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));
gap: 12px;
}
.vp-data-flow-item {
min-height: 216px;
padding: 14px;
border: 1px solid var(--vp-border);
border-radius: var(--vp-radius);
background: #fbfcff;
color: inherit;
display: grid;
gap: 10px;
align-content: start;
text-align: left;
cursor: pointer;
transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}
.vp-data-flow-item:hover,
.vp-data-flow-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-data-flow-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
}
.vp-data-flow-head > span {
width: 30px;
height: 30px;
border-radius: 7px;
background: rgba(22, 100, 255, 0.09);
color: #1664ff;
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
font-weight: 700;
}
.vp-data-flow-evidence {
min-height: 54px;
padding: 10px;
border-radius: 6px;
background: rgba(10, 168, 107, 0.08);
color: var(--vp-text);
font-size: 12px;
line-height: 18px;
}
.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-fleet-monitor .semi-card-body,
.vp-fleet-monitor-stats,
.vp-fleet-task-grid,
.vp-fleet-monitor-trust,
.vp-customer-delivery-board .semi-card-body,
.vp-customer-delivery-grid,
.vp-vehicle-live-view .semi-card-body,
.vp-vehicle-live-main,
.vp-single-vehicle-action-grid,
.vp-vehicle-live-facts,
.vp-vehicle-archive-summary-main,
.vp-vehicle-archive-summary-grid,
.vp-vehicle-question-grid,
.vp-unified-service-board,
.vp-unified-service-grid,
.vp-service-dossier,
.vp-service-dossier-assets,
.vp-customer-service-package,
.vp-customer-service-grid,
.vp-vehicle-task-grid,
.vp-source-readiness-grid,
.vp-source-readiness-metrics,
.vp-map-ops-board,
.vp-map-ops-readiness,
.vp-map-ops-work,
.vp-customer-cockpit,
.vp-customer-cockpit-actions,
.vp-customer-vehicle-monitor,
.vp-customer-vehicle-monitor-grid,
.vp-vehicle-priority-queue-grid,
.vp-customer-cockpit .semi-card-body,
.vp-customer-cockpit-metrics,
.vp-customer-cockpit-trust,
.vp-time-monitor-grid,
.vp-command-center-grid,
.vp-customer-task-grid,
.vp-service-entry-board,
.vp-service-entry-grid,
.vp-current-service-board,
.vp-current-service-grid,
.vp-vehicle-asset-console,
.vp-vehicle-asset-console-grid,
.vp-vehicle-service-desk,
.vp-vehicle-service-grid,
.vp-vehicle-lookup-head,
.vp-vehicle-lookup-grid,
.vp-vehicle-asset-board,
.vp-vehicle-asset-grid,
.vp-vehicle-question-board,
.vp-vehicle-question-grid,
.vp-vehicle-decision-grid,
.vp-vehicle-package-board,
.vp-vehicle-package-grid,
.vp-time-review-package,
.vp-time-review-grid,
.vp-time-audit-strip,
.vp-time-audit-grid,
.vp-time-delivery-strip,
.vp-time-delivery-grid,
.vp-realtime-customer-board .semi-card-body,
.vp-realtime-question-board,
.vp-realtime-question-grid,
.vp-realtime-next-actions,
.vp-realtime-map-dispatch,
.vp-realtime-map-dispatch-grid,
.vp-realtime-customer-steps,
.vp-realtime-single-snapshot,
.vp-realtime-single-grid,
.vp-time-window-monitor .semi-card-body,
.vp-time-window-controls,
.vp-time-window-actions,
.vp-realtime-command-board,
.vp-realtime-command-grid,
.vp-realtime-impact-board,
.vp-realtime-impact-grid,
.vp-source-coverage-grid,
.vp-map-service-rail,
.vp-map-service-rail-actions,
.vp-map-decision-board,
.vp-map-decision-grid,
.vp-map-dispatch-actions,
.vp-map-dispatch-actions-grid,
.vp-map-area-monitor,
.vp-map-area-monitor-grid,
.vp-map-kpi-strip,
.vp-map-selected-service-strip,
.vp-map-selected-service-actions,
.vp-map-task-strip,
.vp-map-customer-package,
.vp-map-customer-package-grid,
.vp-map-vehicle-work-grid,
.vp-map-workspace,
.vp-runbook-grid,
.vp-workbench-grid,
.vp-time-monitor-workbench,
.vp-time-monitor-work-grid,
.vp-focus-service,
.vp-focus-service-evidence,
.vp-scenario-grid,
.vp-operation-flow,
.vp-service-model-grid,
.vp-data-flow-grid,
.vp-capability-grid,
.vp-conclusion-grid,
.vp-monitor-layout,
.vp-alert-flow,
.vp-alert-decision-board,
.vp-alert-decision-grid,
.vp-alert-sla-board,
.vp-alert-sla-grid,
.vp-alert-channel-board,
.vp-alert-channel-grid,
.vp-alert-recovery-board,
.vp-alert-recovery-grid,
.vp-alert-impact-board,
.vp-alert-impact-grid,
.vp-alert-dispatch-grid,
.vp-alert-center-board,
.vp-alert-center-grid,
.vp-alert-vehicle-task-board,
.vp-alert-vehicle-task-grid,
.vp-alert-command-board,
.vp-alert-command-grid,
.vp-notification-customer-board .semi-card-body,
.vp-notification-customer-steps,
.vp-notification-question-board,
.vp-notification-question-grid,
.vp-notification-coverage-board,
.vp-notification-coverage-grid,
.vp-notification-owner-item,
.vp-notification-reachability-board,
.vp-notification-reachability-grid,
.vp-sla-summary,
.vp-risk-grid,
.vp-ops-action-grid,
.vp-alert-ops-grid,
.vp-stat-workspace,
.vp-online-ops-board,
.vp-online-ops-grid,
.vp-stat-insight-grid,
.vp-mileage-reconciliation-desk,
.vp-mileage-reconciliation-grid,
.vp-mileage-delivery-console,
.vp-mileage-delivery-console-grid,
.vp-mileage-next-actions,
.vp-mileage-next-grid,
.vp-mileage-question-grid,
.vp-mileage-delivery-nav-grid,
.vp-mileage-decision-board,
.vp-mileage-decision-grid,
.vp-stat-definition-grid,
.vp-stat-impact-board,
.vp-stat-impact-grid,
.vp-stat-closure-board,
.vp-bi-publish-board,
.vp-bi-publish-grid,
.vp-stat-audit-board,
.vp-stat-audit-grid,
.vp-map-field-command,
.vp-map-field-command-grid,
.vp-trip-workbench .semi-card-body,
.vp-trip-workbench-facts,
.vp-trajectory-decision-board,
.vp-trajectory-decision-grid,
.vp-trajectory-anomaly-grid,
.vp-trajectory-impact-board,
.vp-trajectory-impact-grid,
.vp-history-time-window-board,
.vp-history-time-window-grid,
.vp-history-export-center,
.vp-history-export-center-grid,
.vp-history-customer-export-board .semi-card-body,
.vp-history-customer-export-steps,
.vp-history-report-templates,
.vp-history-report-template-grid,
.vp-history-report-cadence,
.vp-history-report-cadence-grid,
.vp-history-saved-report,
.vp-history-saved-report-grid,
.vp-history-question-board,
.vp-history-question-grid,
.vp-history-replay-nav,
.vp-history-replay-nav-grid,
.vp-history-query-workbench,
.vp-history-query-grid,
.vp-history-package-board,
.vp-history-package-grid,
.vp-history-checklist-grid,
.vp-history-delivery-grid,
.vp-source-fusion-grid,
.vp-source-fusion-facts,
.vp-vehicle-map-layout,
.vp-mileage-customer-query-board .semi-card-body,
.vp-mileage-customer-query-steps,
.vp-mileage-delivery-board,
.vp-mileage-delivery-grid,
.vp-mileage-console,
.vp-mileage-kpi-grid,
.vp-mileage-task-grid,
.vp-mileage-mini-charts,
.vp-playback-layout,
.vp-playback-timeline {
grid-template-columns: 1fr;
}
.vp-customer-cockpit-summary {
border-right: 0;
border-bottom: 1px solid var(--vp-border);
}
.vp-history-export-center-summary {
border-right: 0;
border-bottom: 1px solid var(--vp-border);
}
.vp-customer-vehicle-monitor-copy {
border-right: 0;
border-bottom: 1px solid var(--vp-border);
}
.vp-vehicle-asset-console-summary {
border-right: 0;
border-bottom: 1px solid var(--vp-border);
}
.vp-mileage-delivery-console-summary {
border-right: 0;
border-bottom: 1px solid var(--vp-border);
}
.vp-customer-cockpit-workflow {
grid-template-columns: 1fr;
}
.vp-map-commandbar,
.vp-mileage-console-head,
.vp-map-canvas-toolbar {
align-items: flex-start;
flex-direction: column;
}
.vp-map-customer-canvas {
height: 460px;
}
.vp-trip-workbench-map {
min-height: 0;
}
.vp-trip-workbench-copy {
position: static;
max-width: none;
margin: 14px;
}
.vp-trip-workbench-map-canvas {
min-height: 320px;
height: 320px;
}
.vp-trip-workbench-side {
border-left: 0;
border-top: 1px solid var(--vp-border);
}
.vp-fleet-monitor-map {
min-height: 0;
}
.vp-fleet-monitor-copy {
position: static;
max-width: none;
margin: 14px;
}
.vp-fleet-monitor-map-canvas {
min-height: 320px;
height: 320px;
}
.vp-fleet-monitor-panel {
border-left: 0;
border-top: 1px solid var(--vp-border);
}
.vp-fleet-monitor-action {
grid-template-columns: 1fr;
}
.vp-stat-closure-action {
align-items: flex-start;
flex-direction: column;
}
}