1599 lines
32 KiB
CSS
1599 lines
32 KiB
CSS
/* Self-calibration workspace ---------------------------------------------- */
|
|
|
|
.console-v2[data-module="self-calibration"] {
|
|
--v2-accent: #4f73b2;
|
|
--v2-accent-strong: #1e386b;
|
|
--v2-accent-soft: #e7ecf8;
|
|
--v2-sidebar: #dae3f5;
|
|
--v2-sidebar-deep: #b6c7ea;
|
|
--v2-line: rgba(30, 56, 107, 0.14);
|
|
}
|
|
|
|
.console-v2 .v2-calibration-sidebar,
|
|
.console-v2 .v2-calibration-footer,
|
|
.console-v2 .v2-self-calibration {
|
|
display: none;
|
|
}
|
|
|
|
.console-v2[data-module="self-calibration"] .v2-control-section,
|
|
.console-v2[data-module="self-calibration"] .v2-config-section,
|
|
.console-v2[data-module="self-calibration"] .v2-sidebar > .v2-sidebar-footer:not(.v2-calibration-footer),
|
|
.console-v2[data-module="self-calibration"] .v2-operation-shell,
|
|
.console-v2[data-module="self-calibration"] .v2-output-shell {
|
|
display: none;
|
|
}
|
|
|
|
.console-v2[data-module="self-calibration"] .v2-sidebar {
|
|
background:
|
|
radial-gradient(circle at 14% 3%, rgba(255, 255, 255, 0.84), transparent 24%),
|
|
linear-gradient(158deg, var(--v2-sidebar) 0%, #eef2fa 61%, var(--v2-sidebar-deep) 132%);
|
|
}
|
|
|
|
.console-v2[data-module="self-calibration"] .v2-role-select > .v2-dropdown-trigger {
|
|
max-width: none;
|
|
gap: 5px;
|
|
}
|
|
|
|
.console-v2[data-module="self-calibration"] .v2-calibration-sidebar {
|
|
min-height: 0;
|
|
display: flex;
|
|
flex: 1;
|
|
flex-direction: column;
|
|
margin-top: clamp(22px, 3.4vh, 40px);
|
|
}
|
|
|
|
.console-v2[data-module="self-calibration"] .v2-calibration-footer {
|
|
display: grid;
|
|
}
|
|
|
|
.console-v2.v2-sidebar-collapsed[data-module="self-calibration"] .v2-calibration-sidebar,
|
|
.console-v2.v2-sidebar-collapsed[data-module="self-calibration"] .v2-calibration-footer {
|
|
display: none;
|
|
}
|
|
|
|
.console-v2[data-module="self-calibration"] .main-panel {
|
|
grid-template-rows: 36px minmax(0, 1fr);
|
|
}
|
|
|
|
.console-v2[data-module="self-calibration"] .v2-self-calibration {
|
|
min-width: 0;
|
|
min-height: 0;
|
|
display: grid;
|
|
grid-row: 2;
|
|
grid-template-rows: auto minmax(0, 1fr);
|
|
gap: 15px;
|
|
padding: var(--v2-module-title-block) 0 0;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.v2-calibration-sidebar > .v2-field-caption {
|
|
display: block;
|
|
margin: 0 0 8px;
|
|
color: #617193;
|
|
font-size: 13px;
|
|
font-weight: 750;
|
|
}
|
|
|
|
.v2-calibration-mode-switch {
|
|
display: grid;
|
|
gap: 7px;
|
|
}
|
|
|
|
.v2-calibration-mode-switch button {
|
|
min-height: var(--v2-sidebar-item-height);
|
|
display: grid;
|
|
grid-template-columns: 30px minmax(0, 1fr);
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 0 15px;
|
|
color: #637677;
|
|
background: transparent;
|
|
border: 1px solid transparent;
|
|
border-radius: 13px;
|
|
font-size: 15px;
|
|
font-weight: 700;
|
|
text-align: left;
|
|
cursor: pointer;
|
|
transition: 160ms ease;
|
|
}
|
|
|
|
.v2-calibration-mode-switch button svg {
|
|
width: 19px;
|
|
height: 19px;
|
|
justify-self: center;
|
|
}
|
|
|
|
.v2-calibration-mode-switch button:hover {
|
|
color: var(--v2-accent-strong);
|
|
background: color-mix(in srgb, var(--v2-accent-soft) 34%, white);
|
|
border-color: color-mix(in srgb, var(--v2-accent) 10%, white);
|
|
}
|
|
|
|
.v2-calibration-mode-switch button.active {
|
|
color: #111f20;
|
|
background: rgba(255, 255, 255, 0.94);
|
|
border-color: color-mix(in srgb, var(--v2-accent) 18%, white);
|
|
box-shadow: 0 10px 28px color-mix(in srgb, var(--v2-accent) 10%, transparent);
|
|
}
|
|
|
|
.v2-calibration-mode-switch button.active svg {
|
|
color: var(--v2-accent);
|
|
}
|
|
|
|
.v2-calibration-config-stack {
|
|
display: grid;
|
|
gap: 8px;
|
|
padding-left: 9px;
|
|
border-left: 1px solid color-mix(in srgb, var(--v2-accent) 14%, transparent);
|
|
}
|
|
|
|
.v2-calibration-config-card {
|
|
min-width: 0;
|
|
min-height: var(--v2-sidebar-card-height);
|
|
display: grid;
|
|
grid-template-columns: 28px minmax(0, 1fr) auto;
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 6px 8px;
|
|
color: #314565;
|
|
background: rgba(255, 255, 255, 0.72);
|
|
border: 1px solid rgba(255, 255, 255, 0.78);
|
|
border-radius: var(--v2-sidebar-card-radius);
|
|
}
|
|
|
|
.v2-calibration-config-card > svg {
|
|
width: 17px;
|
|
height: 17px;
|
|
justify-self: center;
|
|
color: var(--v2-accent);
|
|
}
|
|
|
|
.v2-calibration-config-card > div {
|
|
min-width: 0;
|
|
display: grid;
|
|
}
|
|
|
|
.v2-calibration-config-card small {
|
|
color: #7786a2;
|
|
font-size: 8px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.v2-calibration-config-card strong {
|
|
overflow: hidden;
|
|
color: #1e386b;
|
|
margin-top: 2px;
|
|
font-size: 11px;
|
|
font-weight: 850;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-config-card > span {
|
|
padding: 3px 5px;
|
|
color: #345f9d;
|
|
background: rgba(255, 255, 255, 0.68);
|
|
border-radius: 5px;
|
|
font: 800 7px "SFMono-Regular", Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-config-card[data-state="online"] > span {
|
|
color: #17745d;
|
|
}
|
|
|
|
.v2-calibration-config-card[data-state="error"] > span {
|
|
color: #b43d38;
|
|
}
|
|
|
|
.v2-calibration-config-card .v2-config-card-select {
|
|
width: 100%;
|
|
}
|
|
|
|
.v2-calibration-config-card .v2-dropdown-trigger {
|
|
width: 100%;
|
|
height: 18px;
|
|
color: #1e386b;
|
|
font-size: 11px;
|
|
font-weight: 850;
|
|
text-align: left;
|
|
}
|
|
|
|
.v2-calibration-target-note {
|
|
min-height: 28px;
|
|
margin: 7px 4px 8px;
|
|
color: #6f7d97;
|
|
font-size: 9px;
|
|
line-height: 1.45;
|
|
}
|
|
|
|
.v2-calibration-connect,
|
|
.v2-calibration-settings-link {
|
|
width: 100%;
|
|
min-height: 42px;
|
|
display: grid;
|
|
grid-template-columns: 20px minmax(0, 1fr);
|
|
align-items: center;
|
|
gap: 9px;
|
|
padding: 9px 12px;
|
|
border-radius: 12px;
|
|
font-size: 11px;
|
|
font-weight: 850;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.v2-calibration-connect {
|
|
color: white;
|
|
background: linear-gradient(135deg, #5d82c2, #315eaa);
|
|
border: 0;
|
|
box-shadow: 0 10px 22px rgba(35, 71, 133, 0.2);
|
|
}
|
|
|
|
.v2-calibration-connect svg,
|
|
.v2-calibration-settings-link svg {
|
|
width: 16px;
|
|
height: 16px;
|
|
}
|
|
|
|
.v2-calibration-settings-link {
|
|
grid-template-columns: 20px minmax(0, 1fr) 16px;
|
|
margin-top: auto;
|
|
color: #536684;
|
|
background: rgba(255, 255, 255, 0.35);
|
|
border: 1px solid rgba(49, 94, 170, 0.11);
|
|
text-align: left;
|
|
}
|
|
|
|
.v2-calibration-settings-link.active,
|
|
.v2-calibration-settings-link:hover {
|
|
color: #1e386b;
|
|
background: rgba(255, 255, 255, 0.72);
|
|
}
|
|
|
|
.v2-calibration-footer > button {
|
|
color: #315eaa !important;
|
|
background: rgba(255, 255, 255, 0.72) !important;
|
|
}
|
|
|
|
.v2-calibration-heading {
|
|
min-width: 0;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 18px;
|
|
margin-inline: var(--v2-module-title-inline);
|
|
}
|
|
|
|
.v2-calibration-heading > div:first-child {
|
|
min-width: 0;
|
|
}
|
|
|
|
.v2-calibration-heading .section-kicker,
|
|
.v2-calibration-panel .section-kicker,
|
|
.v2-calibration-axis-section .section-kicker {
|
|
display: block;
|
|
color: #5b77aa;
|
|
font: 800 8px "SFMono-Regular", Consolas, monospace;
|
|
letter-spacing: 0.16em;
|
|
}
|
|
|
|
.v2-calibration-heading h1 {
|
|
margin: 4px 0 2px;
|
|
color: #1f2d30;
|
|
font-size: clamp(22px, 2vw, 31px);
|
|
line-height: 1;
|
|
letter-spacing: -0.045em;
|
|
}
|
|
|
|
.v2-calibration-heading p {
|
|
margin: 0;
|
|
color: #839092;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.v2-calibration-statuses {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
}
|
|
|
|
.v2-calibration-statuses > div {
|
|
min-width: 112px;
|
|
min-height: 43px;
|
|
display: grid;
|
|
grid-template-columns: 9px minmax(0, 1fr);
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 7px 10px;
|
|
background: rgba(255, 255, 255, 0.82);
|
|
border: 1px solid rgba(42, 72, 74, 0.08);
|
|
border-radius: 12px;
|
|
box-shadow: 0 8px 20px rgba(37, 70, 72, 0.06);
|
|
}
|
|
|
|
.v2-calibration-statuses > div > i {
|
|
width: 7px;
|
|
height: 7px;
|
|
border-radius: 50%;
|
|
background: #a9b3b3;
|
|
box-shadow: 0 0 0 4px rgba(126, 145, 145, 0.1);
|
|
}
|
|
|
|
.v2-calibration-statuses > div > i.online {
|
|
background: #3ea884;
|
|
box-shadow: 0 0 0 4px rgba(62, 168, 132, 0.12);
|
|
}
|
|
|
|
.v2-calibration-statuses > div > i.wait {
|
|
background: #d9a34c;
|
|
box-shadow: 0 0 0 4px rgba(217, 163, 76, 0.12);
|
|
}
|
|
|
|
.v2-calibration-statuses > div > i.error {
|
|
background: #d95d55;
|
|
box-shadow: 0 0 0 4px rgba(217, 93, 85, 0.12);
|
|
}
|
|
|
|
.v2-calibration-statuses span {
|
|
min-width: 0;
|
|
display: grid;
|
|
}
|
|
|
|
.v2-calibration-statuses small {
|
|
color: #9aa4a5;
|
|
font: 700 7px "SFMono-Regular", Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-statuses strong {
|
|
overflow: hidden;
|
|
color: #425356;
|
|
font-size: 10px;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-view {
|
|
min-width: 0;
|
|
min-height: 0;
|
|
padding: 1px 3px 22px 1px;
|
|
overflow: auto;
|
|
scrollbar-color: rgba(49, 94, 170, 0.3) transparent;
|
|
scrollbar-width: thin;
|
|
}
|
|
|
|
.v2-calibration-view[hidden] {
|
|
display: none !important;
|
|
}
|
|
|
|
.v2-calibration-panel,
|
|
.v2-calibration-axis-card {
|
|
background:
|
|
linear-gradient(152deg, rgba(255, 255, 255, 0.98), rgba(250, 252, 251, 0.91));
|
|
border: 1px solid rgba(48, 78, 80, 0.08);
|
|
border-radius: 18px;
|
|
box-shadow: 0 13px 34px rgba(39, 70, 72, 0.07);
|
|
}
|
|
|
|
.v2-calibration-panel > header,
|
|
.v2-calibration-axis-section > header {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
}
|
|
|
|
.v2-calibration-panel h2,
|
|
.v2-calibration-axis-section h2 {
|
|
margin: 3px 0 0;
|
|
color: #2c3d40;
|
|
font-size: clamp(15px, 1.25vw, 20px);
|
|
letter-spacing: -0.03em;
|
|
}
|
|
|
|
.v2-calibration-hero-grid {
|
|
min-width: 0;
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1.72fr) minmax(270px, 0.72fr);
|
|
gap: 14px;
|
|
}
|
|
|
|
.v2-calibration-stage {
|
|
min-height: clamp(390px, 51vh, 565px);
|
|
display: grid;
|
|
grid-template-rows: auto minmax(250px, 1fr) auto;
|
|
padding: 16px;
|
|
}
|
|
|
|
.v2-calibration-badge {
|
|
padding: 5px 8px;
|
|
color: #18745e;
|
|
background: #e1f5ee;
|
|
border-radius: 7px;
|
|
font-size: 9px;
|
|
font-weight: 850;
|
|
}
|
|
|
|
.v2-calibration-badge.wait {
|
|
color: #98713a;
|
|
background: #fff4df;
|
|
}
|
|
|
|
.v2-calibration-badge.error {
|
|
color: #a84039;
|
|
background: #fce7e5;
|
|
}
|
|
|
|
.v2-calibration-seat-scene {
|
|
min-height: 0;
|
|
position: relative;
|
|
overflow: hidden;
|
|
background:
|
|
radial-gradient(circle at 50% 44%, rgba(218, 227, 245, 0.95), transparent 44%),
|
|
linear-gradient(180deg, #fafbfe, #edf2fa);
|
|
border: 1px solid rgba(49, 83, 84, 0.07);
|
|
border-radius: 15px;
|
|
}
|
|
|
|
.v2-calibration-floor-grid {
|
|
position: absolute;
|
|
inset: 58% -20% -18%;
|
|
z-index: 0;
|
|
opacity: 0.34;
|
|
background-image:
|
|
linear-gradient(rgba(68, 99, 151, 0.17) 1px, transparent 1px),
|
|
linear-gradient(90deg, rgba(68, 99, 151, 0.17) 1px, transparent 1px);
|
|
background-size: 34px 34px;
|
|
transform: perspective(360px) rotateX(58deg);
|
|
transform-origin: center top;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .seat-model-host {
|
|
position: absolute;
|
|
inset: 0;
|
|
z-index: 1;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .calibration-cartoon-viewer {
|
|
cursor: grab;
|
|
touch-action: none;
|
|
user-select: none;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .calibration-cartoon-viewer.dragging {
|
|
cursor: grabbing;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .seat-model-host canvas {
|
|
width: 100%;
|
|
height: 100%;
|
|
display: block;
|
|
outline: 0;
|
|
pointer-events: none;
|
|
touch-action: none;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .v2-repair-seat-fallback {
|
|
inset: 4px 18px 18px;
|
|
transform: scale(0.82);
|
|
}
|
|
|
|
.v2-calibration-seat-scene .repair-css-halo {
|
|
bottom: 10px;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .model-loading {
|
|
position: absolute;
|
|
inset: 0;
|
|
display: grid;
|
|
place-content: center;
|
|
justify-items: center;
|
|
gap: 8px;
|
|
color: #6b7890;
|
|
background: radial-gradient(circle at 50% 48%, rgba(205, 217, 241, 0.72), transparent 52%);
|
|
transition: opacity 280ms ease, visibility 280ms ease;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .model-loading strong {
|
|
color: #344867;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .model-loading small {
|
|
color: #8794aa;
|
|
font: 8px Consolas, monospace;
|
|
letter-spacing: 0.12em;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .model-loading.error strong {
|
|
color: #b5413a;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .model-spinner {
|
|
width: 27px;
|
|
height: 27px;
|
|
border: 2px solid rgba(79, 115, 178, 0.16);
|
|
border-top-color: var(--v2-accent);
|
|
border-radius: 50%;
|
|
animation: calibration-spin 0.8s linear infinite;
|
|
}
|
|
|
|
@keyframes calibration-spin {
|
|
to { transform: rotate(360deg); }
|
|
}
|
|
|
|
.v2-calibration-seat-scene .seat-model-host.is-ready .model-loading {
|
|
visibility: hidden;
|
|
opacity: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .orbit-hint {
|
|
position: absolute;
|
|
bottom: 10px;
|
|
left: 50%;
|
|
z-index: 4;
|
|
padding: 5px 9px;
|
|
color: #7a898b;
|
|
background: rgba(255, 255, 255, 0.74);
|
|
border: 1px solid rgba(57, 91, 92, 0.1);
|
|
border-radius: 999px;
|
|
font: 8px Consolas, monospace;
|
|
opacity: 0;
|
|
transform: translateX(-50%);
|
|
transition: opacity 180ms ease;
|
|
pointer-events: none;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-seat-scene .seat-model-host.is-ready:hover .orbit-hint {
|
|
opacity: 1;
|
|
}
|
|
|
|
.v2-axis-tag {
|
|
position: absolute;
|
|
z-index: 3;
|
|
display: flex;
|
|
gap: 5px;
|
|
padding: 5px 8px;
|
|
color: #6d7c7e;
|
|
background: rgba(255, 255, 255, 0.84);
|
|
border: 1px solid rgba(56, 92, 94, 0.1);
|
|
border-radius: 8px;
|
|
box-shadow: 0 7px 18px rgba(46, 78, 80, 0.07);
|
|
font-size: 8px;
|
|
pointer-events: none;
|
|
backdrop-filter: blur(8px);
|
|
}
|
|
|
|
.v2-axis-tag b {
|
|
color: #315eaa;
|
|
}
|
|
|
|
.v2-axis-tag.tag-back { top: 17%; right: 13%; }
|
|
.v2-axis-tag.tag-base { right: 11%; bottom: 19%; }
|
|
.v2-axis-tag.tag-leg { bottom: 24%; left: 14%; }
|
|
.v2-axis-tag.tag-height { top: 52%; left: 11%; }
|
|
|
|
.v2-calibration-operation {
|
|
min-width: 0;
|
|
min-height: 44px;
|
|
display: grid;
|
|
grid-template-columns: 8px minmax(0, 1fr) auto;
|
|
align-items: center;
|
|
gap: 10px;
|
|
margin-top: 10px;
|
|
padding: 7px 10px;
|
|
background: #f6f9f8;
|
|
border-radius: 11px;
|
|
}
|
|
|
|
.v2-calibration-operation > i {
|
|
width: 7px;
|
|
height: 7px;
|
|
border-radius: 50%;
|
|
background: var(--v2-accent);
|
|
box-shadow: 0 0 0 5px rgba(79, 115, 178, 0.12);
|
|
}
|
|
|
|
.v2-calibration-operation > div {
|
|
min-width: 0;
|
|
display: grid;
|
|
}
|
|
|
|
.v2-calibration-operation small {
|
|
color: #97a1a2;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-operation strong {
|
|
overflow: hidden;
|
|
color: #46575a;
|
|
font-size: 10px;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-operation > span {
|
|
color: #95a0a1;
|
|
font: 700 8px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-operation > span b {
|
|
color: #315eaa;
|
|
}
|
|
|
|
.v2-calibration-workflow {
|
|
min-height: 390px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
padding: 17px;
|
|
}
|
|
|
|
.v2-calibration-workflow > p {
|
|
margin: 13px 0 16px;
|
|
color: #849193;
|
|
font-size: 10px;
|
|
line-height: 1.55;
|
|
}
|
|
|
|
.v2-calibration-flow {
|
|
display: grid;
|
|
gap: 0;
|
|
}
|
|
|
|
.v2-calibration-flow > div {
|
|
min-height: 58px;
|
|
display: grid;
|
|
grid-template-columns: 35px minmax(0, 1fr);
|
|
align-items: center;
|
|
gap: 10px;
|
|
padding: 8px 9px;
|
|
color: #718083;
|
|
background: #f7f9f9;
|
|
border: 1px solid rgba(50, 80, 81, 0.06);
|
|
border-radius: 12px;
|
|
transition: 150ms ease;
|
|
}
|
|
|
|
.v2-calibration-flow > div > span {
|
|
color: #9ca7a8;
|
|
font: 800 10px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-flow > div > div {
|
|
display: grid;
|
|
}
|
|
|
|
.v2-calibration-flow strong {
|
|
color: #526266;
|
|
font-size: 10px;
|
|
}
|
|
|
|
.v2-calibration-flow small {
|
|
color: #9ba5a6;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-flow > div.active {
|
|
background: #eef3fb;
|
|
border-color: rgba(49, 94, 170, 0.2);
|
|
box-shadow: inset 3px 0 var(--v2-accent);
|
|
}
|
|
|
|
.v2-calibration-flow > div.active > span,
|
|
.v2-calibration-flow > div.active strong {
|
|
color: #315eaa;
|
|
}
|
|
|
|
.v2-calibration-flow > div.done {
|
|
background: #edf7f3;
|
|
}
|
|
|
|
.v2-calibration-flow > i {
|
|
width: 1px;
|
|
height: 10px;
|
|
margin-left: 26px;
|
|
background: rgba(85, 112, 113, 0.18);
|
|
}
|
|
|
|
.v2-calibration-primary {
|
|
min-height: 42px;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 9px;
|
|
padding: 9px 13px;
|
|
color: white;
|
|
background: linear-gradient(135deg, #5d82c2, #315eaa);
|
|
border: 0;
|
|
border-radius: 11px;
|
|
box-shadow: 0 10px 24px rgba(35, 71, 133, 0.2);
|
|
font-size: 10px;
|
|
font-weight: 850;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.v2-calibration-primary:disabled {
|
|
color: #9ba4a4;
|
|
background: #e9eeee;
|
|
box-shadow: none;
|
|
cursor: not-allowed;
|
|
}
|
|
|
|
.v2-calibration-primary svg {
|
|
width: 15px;
|
|
height: 15px;
|
|
}
|
|
|
|
.v2-calibration-workflow > .v2-calibration-primary {
|
|
width: 100%;
|
|
margin-top: auto;
|
|
}
|
|
|
|
.v2-calibration-safety {
|
|
display: grid;
|
|
grid-template-columns: 24px minmax(0, 1fr);
|
|
align-items: center;
|
|
gap: 8px;
|
|
margin-top: 10px;
|
|
padding: 9px;
|
|
color: #55736d;
|
|
background: #eef7f4;
|
|
border-radius: 10px;
|
|
}
|
|
|
|
.v2-calibration-safety svg {
|
|
width: 17px;
|
|
height: 17px;
|
|
justify-self: center;
|
|
color: #3f907c;
|
|
}
|
|
|
|
.v2-calibration-safety p {
|
|
margin: 0;
|
|
font-size: 8px;
|
|
line-height: 1.5;
|
|
}
|
|
|
|
.v2-calibration-axis-section {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.v2-calibration-axis-section > header {
|
|
align-items: flex-end;
|
|
margin: 0 3px 9px;
|
|
}
|
|
|
|
.v2-calibration-axis-section > header p {
|
|
margin: 0;
|
|
color: #929d9e;
|
|
font-size: 9px;
|
|
}
|
|
|
|
.v2-calibration-axis-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 10px;
|
|
}
|
|
|
|
.v2-calibration-axis-card {
|
|
min-width: 0;
|
|
padding: 12px;
|
|
}
|
|
|
|
.v2-calibration-axis-card > header {
|
|
display: grid;
|
|
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
align-items: center;
|
|
gap: 7px;
|
|
}
|
|
|
|
.v2-calibration-axis-card > header > span {
|
|
color: #7084a8;
|
|
font: 800 7px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-axis-card > header > strong {
|
|
overflow: hidden;
|
|
color: #435457;
|
|
font-size: 10px;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-axis-card > header > b {
|
|
color: #408974;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-axis-card > header > b.moving {
|
|
color: #315eaa;
|
|
}
|
|
|
|
.v2-calibration-axis-reading {
|
|
display: flex;
|
|
align-items: baseline;
|
|
justify-content: space-between;
|
|
gap: 8px;
|
|
margin: 13px 0 8px;
|
|
}
|
|
|
|
.v2-calibration-axis-reading strong {
|
|
color: #26383b;
|
|
font-size: clamp(15px, 1.35vw, 21px);
|
|
}
|
|
|
|
.v2-calibration-axis-reading span {
|
|
color: #9ba5a6;
|
|
font: 700 7px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-axis-card input[type="range"] {
|
|
width: 100%;
|
|
height: 4px;
|
|
accent-color: var(--v2-accent);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.v2-calibration-range-labels {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
margin-top: 4px;
|
|
color: #a1aaaa;
|
|
font-size: 7px;
|
|
}
|
|
|
|
.v2-calibration-axis-actions {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 5px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.v2-calibration-axis-actions button,
|
|
.v2-calibration-actions button,
|
|
.v2-calibration-settings-card > button:not(.v2-calibration-primary) {
|
|
min-height: 30px;
|
|
padding: 6px 7px;
|
|
color: #6b7779;
|
|
background: #f3f6f5;
|
|
border: 1px solid rgba(53, 84, 85, 0.08);
|
|
border-radius: 8px;
|
|
font-size: 8px;
|
|
font-weight: 800;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.v2-calibration-axis-actions button:nth-child(2),
|
|
.v2-calibration-actions button:first-child {
|
|
color: #315eaa;
|
|
background: #eef3fb;
|
|
}
|
|
|
|
.v2-calibration-axis-actions button:disabled {
|
|
cursor: not-allowed;
|
|
opacity: 0.48;
|
|
}
|
|
|
|
.v2-calibration-stereo-grid {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
|
|
gap: 14px;
|
|
}
|
|
|
|
.v2-calibration-mqtt-panel,
|
|
.v2-calibration-video-panel,
|
|
.v2-calibration-mapping-panel {
|
|
padding: 16px;
|
|
}
|
|
|
|
.v2-calibration-metrics {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 7px;
|
|
margin: 15px 0 9px;
|
|
}
|
|
|
|
.v2-calibration-metrics > div {
|
|
min-width: 0;
|
|
display: grid;
|
|
gap: 3px;
|
|
padding: 10px;
|
|
background: #f6f9f8;
|
|
border-radius: 10px;
|
|
}
|
|
|
|
.v2-calibration-metrics small {
|
|
color: #98a3a4;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-metrics strong {
|
|
color: #3c5053;
|
|
font-size: 17px;
|
|
}
|
|
|
|
.v2-calibration-detail,
|
|
.v2-calibration-form-note {
|
|
margin: 8px 0;
|
|
color: #8e999a;
|
|
font-size: 8px;
|
|
line-height: 1.45;
|
|
}
|
|
|
|
.v2-calibration-pose-areas {
|
|
min-height: 182px;
|
|
display: grid;
|
|
align-content: start;
|
|
gap: 7px;
|
|
}
|
|
|
|
.v2-calibration-empty {
|
|
align-self: center;
|
|
margin: 38px auto;
|
|
color: #98a3a4;
|
|
font-size: 9px;
|
|
text-align: center;
|
|
}
|
|
|
|
.v2-calibration-pose-row {
|
|
min-width: 0;
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) auto;
|
|
gap: 4px 10px;
|
|
padding: 9px 10px;
|
|
background: #f6f9f8;
|
|
border-radius: 10px;
|
|
}
|
|
|
|
.v2-calibration-pose-row strong {
|
|
overflow: hidden;
|
|
color: #425457;
|
|
font-size: 9px;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.v2-calibration-pose-row span {
|
|
color: #315eaa;
|
|
font: 800 8px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-pose-row small {
|
|
grid-column: 1 / -1;
|
|
color: #93a0a1;
|
|
font: 7px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-actions {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 6px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.v2-calibration-actions button {
|
|
padding-inline: 12px;
|
|
}
|
|
|
|
.v2-calibration-video-frame {
|
|
min-height: clamp(260px, 41vh, 440px);
|
|
position: relative;
|
|
margin-top: 14px;
|
|
overflow: hidden;
|
|
background:
|
|
radial-gradient(circle at 50% 45%, rgba(89, 121, 178, 0.18), transparent 45%),
|
|
#17233b;
|
|
border-radius: 13px;
|
|
}
|
|
|
|
.v2-calibration-video-frame img {
|
|
width: 100%;
|
|
height: 100%;
|
|
position: absolute;
|
|
inset: 0;
|
|
z-index: 2;
|
|
display: none;
|
|
object-fit: contain;
|
|
}
|
|
|
|
.v2-calibration-video-frame img.playing {
|
|
display: block;
|
|
}
|
|
|
|
#calibrationVideoPlaceholder {
|
|
height: 100%;
|
|
position: absolute;
|
|
inset: 0;
|
|
display: grid;
|
|
place-content: center;
|
|
justify-items: center;
|
|
gap: 7px;
|
|
color: #a8bcbc;
|
|
}
|
|
|
|
#calibrationVideoPlaceholder svg {
|
|
width: 33px;
|
|
height: 33px;
|
|
color: #8da8d8;
|
|
}
|
|
|
|
#calibrationVideoPlaceholder strong {
|
|
font-size: 11px;
|
|
}
|
|
|
|
#calibrationVideoPlaceholder small {
|
|
color: #718487;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-mapping-panel {
|
|
margin-top: 14px;
|
|
}
|
|
|
|
.v2-calibration-mapping-rows {
|
|
display: grid;
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
gap: 8px;
|
|
margin-top: 13px;
|
|
}
|
|
|
|
.v2-calibration-mapping-row {
|
|
min-width: 0;
|
|
display: grid;
|
|
grid-template-columns: 42px 72px minmax(80px, 1fr) 72px;
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 9px 10px;
|
|
background: #f6f9f8;
|
|
border-radius: 10px;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-mapping-row strong {
|
|
color: #46595b;
|
|
}
|
|
|
|
.v2-calibration-mapping-row span,
|
|
.v2-calibration-mapping-row b {
|
|
color: #839193;
|
|
font: 700 7px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-mapping-row b {
|
|
text-align: right;
|
|
}
|
|
|
|
.v2-calibration-mapping-row > div {
|
|
height: 5px;
|
|
overflow: hidden;
|
|
background: #e1e9e7;
|
|
border-radius: 999px;
|
|
}
|
|
|
|
.v2-calibration-mapping-row i {
|
|
height: 100%;
|
|
display: block;
|
|
background: linear-gradient(90deg, #9ab2dd, #315eaa);
|
|
border-radius: inherit;
|
|
}
|
|
|
|
/* Unified live calibration workspace ------------------------------------ */
|
|
|
|
.v2-calibration-live-view {
|
|
height: 100%;
|
|
display: grid;
|
|
grid-template-rows: minmax(275px, 1fr) auto;
|
|
gap: 10px;
|
|
padding: 1px 3px 6px 1px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.v2-calibration-live-grid {
|
|
min-width: 0;
|
|
min-height: 0;
|
|
display: grid;
|
|
grid-template-columns: minmax(420px, 1.06fr) minmax(380px, 0.94fr);
|
|
gap: 10px;
|
|
}
|
|
|
|
.v2-calibration-live-grid > .v2-calibration-panel {
|
|
min-width: 0;
|
|
min-height: 0;
|
|
height: 100%;
|
|
padding: 12px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-stage {
|
|
display: grid;
|
|
grid-template-rows: auto minmax(150px, 1fr) auto;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-stage > header,
|
|
.v2-calibration-live-grid .v2-calibration-video-panel > header {
|
|
align-items: center;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-panel h2 {
|
|
font-size: clamp(14px, 1.12vw, 18px);
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-operation {
|
|
min-height: 38px;
|
|
margin-top: 7px;
|
|
padding-block: 5px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-axis-tag {
|
|
padding: 4px 6px;
|
|
font-size: 7px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-video-panel {
|
|
display: grid;
|
|
grid-template-rows: auto minmax(150px, 1fr) auto auto;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-video-frame {
|
|
min-height: 0;
|
|
margin-top: 8px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-video-panel .v2-calibration-detail {
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-actions {
|
|
margin-top: 5px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-actions button {
|
|
min-height: 26px;
|
|
padding: 4px 9px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-mqtt-panel {
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-metrics {
|
|
gap: 5px;
|
|
margin: 8px 0 5px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-metrics > div {
|
|
gap: 1px;
|
|
padding: 6px 7px;
|
|
border-radius: 8px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-metrics strong {
|
|
font-size: 13px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-detail {
|
|
margin: 4px 0;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-pose-areas {
|
|
min-height: 38px;
|
|
max-height: 92px;
|
|
display: grid;
|
|
grid-template-columns: 1fr;
|
|
gap: 4px;
|
|
overflow: auto;
|
|
scrollbar-width: thin;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-empty {
|
|
align-self: center;
|
|
margin: 10px auto;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-pose-row {
|
|
gap: 2px 6px;
|
|
padding: 3px 6px;
|
|
border-radius: 8px;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-pose-row strong {
|
|
font-size: 8px;
|
|
line-height: 1.1;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-pose-row span {
|
|
font-size: 7px;
|
|
line-height: 1.1;
|
|
}
|
|
|
|
.v2-calibration-live-grid .v2-calibration-pose-row small {
|
|
font-size: 6px;
|
|
line-height: 1.1;
|
|
}
|
|
|
|
.v2-calibration-live-mapping {
|
|
min-height: 0;
|
|
margin-top: 6px;
|
|
padding-top: 6px;
|
|
border-top: 1px solid rgba(49, 94, 170, 0.1);
|
|
}
|
|
|
|
.v2-calibration-subheading {
|
|
display: flex;
|
|
align-items: baseline;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.v2-calibration-subheading span {
|
|
color: #5b77aa;
|
|
font: 800 7px Consolas, monospace;
|
|
letter-spacing: 0.12em;
|
|
}
|
|
|
|
.v2-calibration-subheading strong {
|
|
color: #596a6d;
|
|
font-size: 9px;
|
|
}
|
|
|
|
.v2-calibration-live-mapping .v2-calibration-mapping-rows {
|
|
grid-template-columns: 1fr;
|
|
gap: 2px;
|
|
margin-top: 4px;
|
|
}
|
|
|
|
.v2-calibration-live-mapping .v2-calibration-mapping-row {
|
|
grid-template-columns: 34px 52px minmax(28px, 1fr) 47px;
|
|
gap: 5px;
|
|
padding: 2px 6px;
|
|
border-radius: 7px;
|
|
font-size: 7px;
|
|
line-height: 1;
|
|
}
|
|
|
|
.v2-calibration-live-mapping .v2-calibration-mapping-row span,
|
|
.v2-calibration-live-mapping .v2-calibration-mapping-row b {
|
|
font-size: 6px;
|
|
}
|
|
|
|
.v2-calibration-live-axes {
|
|
min-width: 0;
|
|
margin: 0;
|
|
padding: 10px 11px 8px;
|
|
}
|
|
|
|
.v2-calibration-live-axes > .v2-calibration-live-toolbar {
|
|
display: grid;
|
|
grid-template-columns: minmax(128px, 0.54fr) minmax(340px, 1.5fr) minmax(155px, 0.64fr);
|
|
align-items: center;
|
|
gap: 10px;
|
|
margin: 0 0 8px;
|
|
}
|
|
|
|
.v2-calibration-axis-title {
|
|
min-width: 0;
|
|
}
|
|
|
|
.v2-calibration-axis-title h2 {
|
|
margin-top: 1px;
|
|
}
|
|
|
|
.v2-calibration-axis-title small {
|
|
display: block;
|
|
overflow: hidden;
|
|
margin-top: 2px;
|
|
color: #919d9e;
|
|
font-size: 7px;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-live-toolbar .v2-calibration-flow {
|
|
min-width: 0;
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) 12px minmax(0, 1fr) 12px minmax(0, 1fr);
|
|
align-items: center;
|
|
}
|
|
|
|
.v2-calibration-live-toolbar .v2-calibration-flow > div {
|
|
min-height: 36px;
|
|
grid-template-columns: 24px minmax(0, 1fr);
|
|
gap: 5px;
|
|
padding: 4px 6px;
|
|
border-radius: 9px;
|
|
}
|
|
|
|
.v2-calibration-live-toolbar .v2-calibration-flow > div > span {
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-live-toolbar .v2-calibration-flow strong {
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-live-toolbar .v2-calibration-flow small {
|
|
overflow: hidden;
|
|
font-size: 6px;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.v2-calibration-live-toolbar .v2-calibration-flow > i {
|
|
width: 100%;
|
|
height: 1px;
|
|
margin: 0;
|
|
}
|
|
|
|
.v2-calibration-live-toolbar > .v2-calibration-primary {
|
|
width: 100%;
|
|
min-height: 36px;
|
|
padding: 7px 9px;
|
|
font-size: 8px;
|
|
}
|
|
|
|
.v2-calibration-live-axes .v2-calibration-axis-card {
|
|
padding: 8px 9px;
|
|
border-radius: 13px;
|
|
box-shadow: 0 8px 22px rgba(39, 70, 72, 0.055);
|
|
}
|
|
|
|
.v2-calibration-live-axes .v2-calibration-axis-reading {
|
|
margin: 7px 0 4px;
|
|
}
|
|
|
|
.v2-calibration-live-axes .v2-calibration-axis-reading strong {
|
|
font-size: clamp(13px, 1.1vw, 17px);
|
|
}
|
|
|
|
.v2-calibration-live-axes .v2-calibration-axis-actions {
|
|
margin-top: 6px;
|
|
}
|
|
|
|
.v2-calibration-live-axes .v2-calibration-axis-actions button {
|
|
min-height: 25px;
|
|
padding: 4px 5px;
|
|
}
|
|
|
|
.v2-calibration-live-safety {
|
|
min-height: 24px;
|
|
grid-template-columns: 18px minmax(0, 1fr);
|
|
gap: 5px;
|
|
margin-top: 6px;
|
|
padding: 4px 7px;
|
|
}
|
|
|
|
.v2-calibration-live-safety svg {
|
|
width: 13px;
|
|
height: 13px;
|
|
}
|
|
|
|
.v2-calibration-live-safety p {
|
|
display: flex;
|
|
gap: 7px;
|
|
align-items: baseline;
|
|
font-size: 7px;
|
|
}
|
|
|
|
.v2-calibration-live-safety span {
|
|
color: #718985;
|
|
}
|
|
|
|
.v2-calibration-settings-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 13px;
|
|
}
|
|
|
|
.v2-calibration-settings-card {
|
|
min-width: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 10px;
|
|
padding: 17px;
|
|
}
|
|
|
|
.v2-calibration-settings-card > header {
|
|
display: grid;
|
|
grid-template-columns: 38px minmax(0, 1fr);
|
|
align-items: center;
|
|
justify-content: start;
|
|
gap: 10px;
|
|
}
|
|
|
|
.v2-calibration-settings-card > header > span {
|
|
width: 36px;
|
|
height: 36px;
|
|
display: grid;
|
|
place-items: center;
|
|
color: white;
|
|
background: linear-gradient(135deg, #5d82c2, #315eaa);
|
|
border-radius: 10px;
|
|
font: 850 9px Consolas, monospace;
|
|
}
|
|
|
|
.v2-calibration-settings-card > header small {
|
|
color: #657da8;
|
|
font: 750 7px Consolas, monospace;
|
|
letter-spacing: 0.1em;
|
|
}
|
|
|
|
.v2-calibration-settings-card > header h2 {
|
|
margin-top: 1px;
|
|
}
|
|
|
|
.v2-calibration-settings-card label {
|
|
display: grid;
|
|
gap: 5px;
|
|
color: #718083;
|
|
font-size: 8px;
|
|
font-weight: 750;
|
|
}
|
|
|
|
.v2-calibration-settings-card input {
|
|
width: 100%;
|
|
min-width: 0;
|
|
height: 36px;
|
|
padding: 7px 9px;
|
|
color: #415356;
|
|
background: #f5f8f7;
|
|
border: 1px solid rgba(54, 85, 86, 0.09);
|
|
border-radius: 9px;
|
|
outline: 0;
|
|
font-size: 9px;
|
|
}
|
|
|
|
.v2-calibration-settings-card input:focus {
|
|
border-color: rgba(49, 94, 170, 0.42);
|
|
box-shadow: 0 0 0 3px rgba(79, 115, 178, 0.12);
|
|
}
|
|
|
|
.v2-calibration-two-col {
|
|
min-width: 0;
|
|
display: grid;
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
gap: 8px;
|
|
}
|
|
|
|
.v2-calibration-settings-card > button {
|
|
margin-top: auto;
|
|
}
|
|
|
|
@media (max-height: 820px) {
|
|
.console-v2[data-module="self-calibration"] .v2-calibration-sidebar {
|
|
margin-top: 14px;
|
|
}
|
|
|
|
.v2-calibration-sidebar .v2-section-heading h2 {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.v2-calibration-sidebar > .v2-field-caption {
|
|
margin-bottom: 5px;
|
|
font-size: 11px;
|
|
}
|
|
|
|
.v2-calibration-mode-switch button {
|
|
min-height: 41px;
|
|
grid-template-columns: 21px minmax(0, 1fr);
|
|
padding: 0 9px;
|
|
font-size: 10px;
|
|
}
|
|
|
|
.v2-calibration-mode-switch button svg {
|
|
width: 17px;
|
|
height: 17px;
|
|
}
|
|
|
|
.v2-calibration-config-card {
|
|
min-height: 38px;
|
|
}
|
|
}
|
|
|
|
@media (max-width: 1180px) {
|
|
.v2-calibration-hero-grid {
|
|
grid-template-columns: minmax(0, 1.5fr) minmax(245px, 0.75fr);
|
|
}
|
|
|
|
.v2-calibration-statuses > div {
|
|
min-width: 94px;
|
|
}
|
|
|
|
.v2-calibration-axis-grid {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
}
|
|
|
|
.v2-calibration-live-grid {
|
|
grid-template-columns: minmax(390px, 1.06fr) minmax(340px, 0.94fr);
|
|
}
|
|
|
|
.v2-calibration-live-axes .v2-calibration-axis-grid {
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
}
|
|
|
|
.v2-calibration-live-axes > .v2-calibration-live-toolbar {
|
|
grid-template-columns: minmax(118px, 0.48fr) minmax(300px, 1.45fr) minmax(140px, 0.62fr);
|
|
}
|
|
|
|
.v2-calibration-settings-grid {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
}
|
|
}
|
|
|
|
@media (max-width: 900px) {
|
|
.console-v2[data-module="self-calibration"] .v2-self-calibration {
|
|
overflow: auto;
|
|
}
|
|
|
|
.v2-calibration-heading {
|
|
align-items: flex-start;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.v2-calibration-statuses {
|
|
width: 100%;
|
|
}
|
|
|
|
.v2-calibration-statuses > div {
|
|
min-width: 0;
|
|
flex: 1;
|
|
}
|
|
|
|
.v2-calibration-view {
|
|
overflow: visible;
|
|
}
|
|
|
|
.v2-calibration-live-view {
|
|
height: auto;
|
|
grid-template-rows: auto auto;
|
|
overflow: visible;
|
|
}
|
|
|
|
.v2-calibration-hero-grid,
|
|
.v2-calibration-stereo-grid,
|
|
.v2-calibration-live-grid {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
.v2-calibration-live-grid > .v2-calibration-panel {
|
|
min-height: 330px;
|
|
}
|
|
|
|
.v2-calibration-live-axes > .v2-calibration-live-toolbar {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
.v2-calibration-live-axes .v2-calibration-axis-grid {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
}
|
|
|
|
.v2-calibration-workflow {
|
|
min-height: 360px;
|
|
}
|
|
}
|
|
|
|
@media (max-width: 680px) {
|
|
.v2-calibration-statuses {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
}
|
|
|
|
.v2-calibration-axis-grid,
|
|
.v2-calibration-mapping-rows,
|
|
.v2-calibration-settings-grid {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
.v2-calibration-mapping-row {
|
|
grid-template-columns: 38px 64px minmax(60px, 1fr) 64px;
|
|
}
|
|
}
|
|
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.v2-calibration-seat-scene .model-spinner {
|
|
animation-duration: 2.4s;
|
|
}
|
|
}
|