CmvrControlStation/styles.qss

1437 lines
30 KiB
Plaintext

* {
font-family: "Microsoft YaHei UI";
font-size: 13px;
color: #282d33;
}
QMainWindow {
background: transparent;
}
QWidget#windowSurface {
background: #f4f5f7;
border: 1px solid #cbd2da;
border-radius: 10px;
}
QWidget#windowSurface[maximized="true"] {
border: none;
border-radius: 0;
}
QWidget#appRoot, QStackedWidget#pages {
background: #f4f5f7;
}
QWidget#customTitleBar {
background: #f8fafc;
border: none;
border-bottom: 1px solid #dce1e6;
}
QLabel#titleBarMark {
color: #ffffff;
background: #1b6ef3;
border-radius: 5px;
font-size: 13px;
font-weight: 700;
}
QLabel#titleBarTitle {
color: #202832;
font-size: 13px;
font-weight: 700;
}
QLabel#titleBarPage {
color: #66727e;
font-size: 12px;
}
QLabel#titleBarBuild {
color: #818b96;
background: #eef1f4;
border: 1px solid #dce1e6;
border-radius: 10px;
padding: 2px 8px;
font-size: 11px;
}
QFrame#titleBarDivider {
color: #d4dae0;
max-height: 18px;
}
QPushButton#windowControlButton,
QPushButton#closeWindowButton {
min-height: 44px;
padding: 0;
background: transparent;
border: none;
border-radius: 0;
}
QPushButton#windowControlButton:hover {
background: #e8ecf0;
}
QPushButton#windowControlButton:pressed {
background: #dce2e8;
}
QPushButton#closeWindowButton:hover {
background: #d84646;
}
QPushButton#closeWindowButton:pressed {
background: #bc3434;
}
QWidget#sidebar {
background: #182028;
border: none;
}
QLabel#brandMark {
background: #1b6ef3;
color: white;
border-radius: 4px;
font-size: 15px;
font-weight: 700;
}
QLabel#brandName {
color: #f5f7fa;
font-size: 16px;
font-weight: 700;
}
QLabel#brandCaption, QLabel#sidebarLabel {
color: #89919c;
font-size: 11px;
}
QLabel#workspaceLabel {
padding-top: 16px;
border-top: 1px solid #2b3540;
}
QScrollArea#navScroll, QWidget#navTree, QWidget#navGroupContent,
QScrollArea#navScroll > QWidget > QWidget {
background: transparent;
border: none;
}
QScrollArea#navScroll QScrollBar:vertical {
background: transparent;
width: 6px;
margin: 2px 0;
}
QScrollArea#navScroll QScrollBar::handle:vertical {
background: #46525e;
min-height: 28px;
border-radius: 3px;
}
QScrollArea#navScroll QScrollBar::add-line:vertical,
QScrollArea#navScroll QScrollBar::sub-line:vertical,
QScrollArea#navScroll QScrollBar::add-page:vertical,
QScrollArea#navScroll QScrollBar::sub-page:vertical {
background: transparent;
height: 0;
}
QPushButton#navGroupButton, QPushButton#navSectionPageButton {
background: transparent;
color: #eef2f6;
border: none;
border-left: 3px solid transparent;
border-radius: 0;
text-align: left;
padding: 0 16px;
min-height: 38px;
font-weight: 700;
}
QPushButton#navGroupButton[navLevel="1"],
QPushButton#navSectionPageButton[navLevel="1"] {
padding-left: 28px;
color: #d4dae1;
min-height: 36px;
}
QPushButton#navGroupButton:hover, QPushButton#navSectionPageButton:hover {
background: #222c35;
color: white;
}
QPushButton#navSectionPageButton:checked {
background: #26313c;
color: white;
border-left-color: #4e8df7;
}
QPushButton#navButton {
background: transparent;
color: #b9c0c9;
border: none;
border-left: 3px solid transparent;
border-radius: 0;
text-align: left;
padding: 0 16px;
min-height: 34px;
font-weight: 500;
}
QPushButton#navButton[navLevel="2"] {
padding-left: 42px;
min-height: 32px;
color: #aeb7c1;
font-size: 12px;
}
QPushButton#navButton:hover {
background: #222c35;
color: white;
}
QPushButton#navButton:checked {
background: #26313c;
color: white;
border-left-color: #4e8df7;
font-weight: 600;
}
QFrame#connectionPanel {
background: #202a34;
border: 1px solid #34414d;
border-radius: 6px;
}
QFrame#connectionPanel QLabel {
color: #aeb6c0;
}
QWidget#sidebarConnectionState {
background: transparent;
}
QLabel#sidebarEndpoint {
color: #f3f6f8;
font-family: Consolas;
font-weight: 600;
}
QLabel#sidebarDetail {
color: #8f9ca8;
font-size: 11px;
}
QFrame#connectionPanel QLabel#statusChip {
min-height: 0;
padding: 0;
color: #aeb6c0;
background: transparent;
border: none;
border-radius: 0;
}
QFrame#connectionPanel QLineEdit, QFrame#connectionPanel QSpinBox {
background: #20252b;
color: #f0f2f5;
border-color: #424a54;
}
QFrame#systemConnectionPanel {
background: #ffffff;
border: 1px solid #dce3e9;
border-radius: 6px;
}
QWidget#systemConnectionState {
background: #f4f7fa;
border: 1px solid #dfe5eb;
border-radius: 13px;
padding: 1px 8px;
}
QWidget#systemConnectionState[connected="true"] {
background: #edf9f4;
border-color: #c9e9da;
}
QWidget#systemConnectionState QLabel#connectionText {
color: #606d78;
font-weight: 600;
}
QWidget#systemConnectionState[connected="true"] QLabel#connectionText {
color: #167754;
}
QWidget#systemConnectionState QLabel#statusChip {
min-height: 0;
color: #697681;
background: transparent;
border: none;
padding: 0;
}
QSpinBox#systemConnectionPort {
min-height: 30px;
padding: 0 7px;
}
QCheckBox#demoCheck {
color: #cbd1d8;
}
QFrame#systemConnectionPanel QCheckBox#demoCheck {
color: #4e5b67;
}
QWidget#header {
background: white;
border-bottom: 1px solid #e2e5e9;
}
QWidget#armHeaderControls {
background: transparent;
}
QWidget#armHeaderControls QLabel#eyebrow {
color: #69747f;
font-size: 11px;
}
QWidget#armHeaderControls QLineEdit {
min-width: 172px;
max-width: 172px;
background: #f9fafb;
}
QWidget#armHeaderControls QPushButton {
min-width: 106px;
}
QPushButton#armTelemetryStatus {
color: #62706b;
background: #f4f7f6;
border-color: #d7e2dd;
font-weight: 500;
}
QPushButton#armTelemetryStatus[active="true"] {
color: #166c4b;
background: #eef9f4;
border-color: #bfe6d5;
}
QLabel#pageTitle {
font-size: 18px;
font-weight: 600;
color: #20252b;
}
QLabel#pageSubtitle {
color: #747b84;
font-size: 12px;
}
QLabel#statusChip {
background: #f1f3f5;
color: #616872;
border: 1px solid #e0e4e8;
border-radius: 12px;
padding: 4px 10px;
min-height: 16px;
}
QFrame#metricCard, QFrame#panel, QFrame#armServiceHeader,
QFrame#agvServiceHeader,
QFrame#armCommandPanel, QFrame#armTeachPanel {
background: white;
border: 1px solid #e0e3e7;
border-radius: 6px;
}
QFrame#armServiceHeader, QFrame#agvServiceHeader {
background: transparent;
border: none;
border-bottom: 1px solid #d7dde3;
border-radius: 0;
}
QFrame#armCommandPanel, QFrame#armTeachPanel {
border-color: #d9dee4;
background: #ffffff;
border-radius: 6px;
}
QSplitter#armModelMotionSplitter::handle {
background: transparent;
}
QSplitter#armModelMotionSplitter::handle:vertical {
height: 8px;
}
QSplitter#armModelMotionSplitter::handle:vertical:hover {
background: #dce8f5;
}
QFrame#armPanelHeader {
background: #ffffff;
border: none;
border-bottom: 1px solid #e4e8ec;
}
QWidget#commandBody {
background: #ffffff;
}
QLabel#armStateValue {
color: #74808a;
font-weight: 600;
}
QLabel#armStateValue[state="good"] {
color: #177553;
}
QLabel#armStateValue[state="error"] {
color: #bd343b;
}
QTabWidget#serviceTabs::pane {
border: 1px solid #dfe3e8;
border-radius: 6px;
background: #ffffff;
top: -1px;
}
QTabWidget#deviceManagementTabs::pane {
border: none;
background: #f4f5f7;
top: -1px;
}
QTabWidget#deviceManagementTabs QTabBar {
background: #ffffff;
border-bottom: 1px solid #dce2e8;
}
QTabWidget#deviceManagementTabs QTabBar::tab {
min-width: 118px;
min-height: 42px;
padding: 0 18px;
color: #6b7783;
background: transparent;
border: none;
border-bottom: 2px solid transparent;
font-weight: 500;
}
QTabWidget#deviceManagementTabs QTabBar::tab:hover {
color: #25313d;
background: #f7f9fb;
}
QTabWidget#deviceManagementTabs QTabBar::tab:selected {
color: #1769c2;
border-bottom-color: #1b72d2;
font-weight: 700;
}
QScrollArea#deviceOverviewScroll,
QScrollArea#deviceOverviewScroll > QWidget > QWidget,
QWidget#deviceOverviewPage,
QWidget#deviceGridHost {
background: #f4f5f7;
border: none;
}
QFrame#deviceOverviewHero {
background: #172b43;
border: 1px solid #234262;
border-radius: 9px;
}
QLabel#deviceHeroEyebrow {
color: #79b7ff;
font-size: 10px;
font-weight: 700;
}
QLabel#deviceHeroTitle {
color: #ffffff;
font-size: 22px;
font-weight: 700;
}
QLabel#deviceHeroDescription {
color: #c1d1e1;
font-size: 12px;
}
QLabel#deviceSystemIdentity {
color: #8fa9c2;
font-size: 11px;
}
QLabel#edgeConnectionChip {
color: #d2dbe4;
background: #223951;
border: 1px solid #35516d;
border-radius: 13px;
padding: 5px 11px;
font-size: 11px;
font-weight: 600;
}
QLabel#edgeConnectionChip[connected="true"] {
color: #8fe1ba;
background: #1c423d;
border-color: #2f6659;
}
QPushButton#deviceRefreshButton {
color: #e8f2fc;
background: #2a4867;
border: 1px solid #41617f;
border-radius: 5px;
padding: 7px 13px;
}
QPushButton#deviceRefreshButton:hover {
background: #345779;
}
QPushButton#deviceRefreshButton:disabled {
color: #70859a;
background: #26394d;
border-color: #354b61;
}
QFrame#deviceMetricCard {
background: #ffffff;
border: 1px solid #dfe4e9;
border-radius: 7px;
}
QFrame#deviceMetricCard[accent="green"] {
border-left: 3px solid #25a371;
}
QFrame#deviceMetricCard[accent="blue"] {
border-left: 3px solid #2d7fd2;
}
QFrame#deviceMetricCard[accent="orange"] {
border-left: 3px solid #e18435;
}
QLabel#deviceMetricLabel {
color: #707b86;
font-size: 11px;
font-weight: 600;
}
QLabel#deviceMetricValue {
color: #202c37;
font-size: 22px;
font-weight: 700;
}
QLabel#deviceMetricNote {
color: #99a2ab;
font-size: 10px;
}
QLabel#deviceSectionTitle {
color: #26323d;
font-size: 16px;
font-weight: 700;
}
QLabel#deviceSectionHint {
color: #87919b;
font-size: 11px;
}
QPushButton#deviceEditButton,
QPushButton#deviceEditButtonActive {
min-width: 78px;
padding: 7px 14px;
border-radius: 5px;
font-weight: 600;
}
QPushButton#deviceEditButton {
color: #286eb8;
background: #edf5ff;
border: 1px solid #b9d4f0;
}
QPushButton#deviceEditButton:hover {
background: #dfedfd;
border-color: #82b2e4;
}
QPushButton#deviceEditButtonActive {
color: #ffffff;
background: #2f7de1;
border: 1px solid #2f7de1;
}
QPushButton#deviceEditButtonActive:hover {
background: #276bc2;
}
QLineEdit#deviceSearchEdit {
background: #ffffff;
border: 1px solid #d7dde3;
border-radius: 16px;
padding: 6px 13px;
}
QLineEdit#deviceSearchEdit:focus {
border-color: #438bd6;
}
QFrame#deviceCard {
background: #ffffff;
border: 1px solid #dfe4e9;
border-radius: 8px;
}
QFrame#deviceCard:hover {
border-color: #aabfd4;
background: #fbfdff;
}
QFrame#deviceCard[editing="true"]:hover {
border-color: #d5dce3;
background: #ffffff;
}
QLabel#deviceIconBadge {
background: #f0f4f8;
border: 1px solid #e1e7ed;
border-radius: 7px;
}
QLabel#deviceCardType {
color: #28343f;
font-size: 14px;
font-weight: 700;
}
QLabel#deviceCardProtocol {
color: #9aa4ad;
font-size: 9px;
font-weight: 600;
}
QLabel#deviceOnlineChip {
color: #168156;
background: #eaf8f1;
border: 1px solid #c9eadb;
border-radius: 10px;
padding: 2px 7px;
font-size: 10px;
font-weight: 600;
}
QLabel#deviceOnlineChip[pending="true"] {
color: #a56a14;
background: #fff6df;
border-color: #efd9a5;
}
QToolButton#deviceDeleteButton {
min-width: 28px;
max-width: 28px;
min-height: 28px;
max-height: 28px;
background: #fff3f3;
border: 1px solid #f0cccc;
border-radius: 5px;
}
QToolButton#deviceDeleteButton:hover {
background: #ffe4e4;
border-color: #df9999;
}
QLabel#deviceConfigFieldLabel {
color: #667482;
font-size: 10px;
font-weight: 600;
}
QLineEdit#deviceConfigInput,
QComboBox#deviceConfigCombo,
QLineEdit#deviceParameterInput,
QComboBox#deviceParameterInput {
min-height: 30px;
color: #2d3945;
background: #ffffff;
border: 1px solid #d6dfe7;
border-radius: 5px;
padding: 2px 8px;
}
QLineEdit#deviceConfigInput:focus,
QComboBox#deviceConfigCombo:focus,
QLineEdit#deviceParameterInput:focus,
QComboBox#deviceParameterInput:focus {
border-color: #438bd6;
}
QPushButton#deviceParameterToggle {
min-height: 30px;
color: #516170;
background: #f7f9fb;
border: 1px solid #e0e6ec;
border-radius: 5px;
padding: 2px 10px;
text-align: left;
font-weight: 600;
}
QPushButton#deviceParameterToggle:hover {
color: #286eb8;
background: #eef5fd;
border-color: #bfd5eb;
}
QScrollArea#deviceParameterScroll,
QScrollArea#deviceParameterScroll > QWidget > QWidget,
QWidget#deviceParameterHost {
background: #f8fafc;
border: none;
}
QScrollArea#deviceParameterScroll {
border: 1px solid #e0e6ec;
border-radius: 5px;
}
QLabel#deviceParameterHeader {
color: #71808e;
font-size: 10px;
font-weight: 700;
}
QLabel#deviceParameterName {
color: #4d5b68;
font-family: Consolas;
font-size: 10px;
}
QFrame#deviceAddCard {
background: #f8fbff;
border: 1px dashed #9fc0e5;
border-radius: 8px;
}
QFrame#deviceAddCard:hover {
background: #edf6ff;
border-color: #438bd6;
}
QLabel#deviceAddIcon {
min-width: 58px;
min-height: 58px;
background: #e5f1ff;
border: 1px solid #c2dcf8;
border-radius: 29px;
}
QLabel#deviceAddTitle {
color: #286eb8;
font-size: 14px;
font-weight: 700;
}
QLabel#deviceAddHint {
color: #8795a2;
font-size: 10px;
}
QLabel#deviceCardId {
color: #26313b;
font-family: Consolas;
font-size: 13px;
font-weight: 600;
}
QLabel#deviceCardSource {
color: #9aa2aa;
font-family: Consolas;
font-size: 9px;
}
QFrame#deviceEmptyState {
background: #ffffff;
border: 1px dashed #cfd8e1;
border-radius: 8px;
}
QLabel#deviceEmptyTitle {
color: #45515d;
font-size: 14px;
font-weight: 600;
}
QLabel#deviceEmptyHint {
color: #929ca5;
font-size: 11px;
}
QTabWidget#armTabs::pane, QTabWidget#agvTabs::pane {
border: none;
background: transparent;
top: -1px;
}
QTabWidget#serviceTabs QTabBar::tab {
min-width: 116px;
min-height: 34px;
padding: 0 16px;
color: #69727d;
background: #edf0f3;
border: 1px solid #dfe3e8;
border-bottom: none;
}
QTabWidget#serviceTabs QTabBar::tab:selected {
color: #16202a;
background: #ffffff;
font-weight: 600;
}
QTabWidget#armTabs QTabBar::tab,
QTabWidget#agvTabs QTabBar::tab {
min-width: 126px;
min-height: 38px;
padding: 0 16px;
color: #68737e;
background: transparent;
border: none;
border-bottom: 2px solid transparent;
font-weight: 500;
}
QTabWidget#armTabs QTabBar::tab:hover,
QTabWidget#agvTabs QTabBar::tab:hover {
color: #27313b;
background: #eef2f6;
}
QTabWidget#armTabs QTabBar::tab:selected,
QTabWidget#agvTabs QTabBar::tab:selected {
color: #17212b;
background: transparent;
border-bottom-color: #2179dc;
font-weight: 600;
}
QTabWidget#armTabs QTabBar, QTabWidget#agvTabs QTabBar {
border-bottom: 1px solid #d7dde3;
}
QTabWidget#armMotionCommandTabs::pane {
border: none;
background: #ffffff;
top: -1px;
}
QTabWidget#armMotionCommandTabs QTabBar {
border: none;
background: #eef2f6;
border-radius: 5px;
}
QTabWidget#armMotionCommandTabs QTabBar::tab {
min-width: 132px;
min-height: 30px;
padding: 0 14px;
color: #63707c;
background: transparent;
border: none;
border-radius: 4px;
font-weight: 500;
}
QTabWidget#armMotionCommandTabs QTabBar::tab:hover {
color: #27313b;
background: #e2e8ef;
}
QTabWidget#armMotionCommandTabs QTabBar::tab:selected {
color: #155dcc;
background: #ffffff;
border: 1px solid #ccd8e5;
font-weight: 600;
}
QSplitter#armTargetTables::handle {
background: #dfe5ec;
width: 1px;
margin: 26px 5px 4px 5px;
}
QFrame#urdfToolbar, QFrame#urdfStatusBar {
background: #ffffff;
border: none;
}
QFrame#urdfToolbar {
border-bottom: 1px solid #dfe3e8;
min-height: 46px;
max-height: 46px;
}
QFrame#urdfStatusBar {
border-top: 1px solid #dfe3e8;
min-height: 38px;
max-height: 38px;
}
QWidget#urdfLoadingView {
background: #eef1f4;
border: none;
}
QLabel#urdfLoadingTitle {
color: #26323d;
font-size: 16px;
font-weight: 600;
}
QLabel#urdfLoadingDetail {
color: #74808c;
font-size: 12px;
}
QProgressBar#urdfLoadingProgress {
min-height: 6px;
max-height: 6px;
background: #dce2e8;
border: none;
border-radius: 3px;
}
QProgressBar#urdfLoadingProgress::chunk {
background: #2878f0;
border-radius: 3px;
}
QWidget#urdfViewer {
background: #e9eef2;
border: 1px solid #d9dee4;
border-radius: 4px;
}
QFrame#armCommandPanel QLabel#sectionTitle,
QFrame#armTeachPanel QLabel#sectionTitle {
color: #202a34;
}
QFrame#armTeachPanel QTableWidget {
background: #ffffff;
alternate-background-color: #f7f9fb;
border: 1px solid #e0e5e9;
border-radius: 3px;
}
QFrame#armTeachPanel QTableWidget::item:selected {
background: #e8f2ff;
color: #145da8;
border-bottom: 1px solid #d7e7fa;
}
QPushButton#teachUndoButton {
min-height: 34px;
}
QFrame#armCommandPanel QPushButton,
QFrame#armTeachPanel QPushButton {
min-height: 22px;
}
QFrame#armServiceHeader QLineEdit {
background: #f9fafb;
}
QFrame#agvServiceHeader QLineEdit {
background: #f9fafb;
}
QDialog#AgvStatusDialog {
background: transparent;
border: none;
}
QWidget#agvDialogSurface {
background: transparent;
border: none;
}
QWidget#agvDialogTitleBar {
background: #f8fafc;
border: 1px solid #cbd2da;
border-bottom-color: #dce1e6;
border-top-left-radius: 9px;
border-top-right-radius: 9px;
}
QWidget#agvDialogContent {
background: #f5f7fa;
border-left: 1px solid #cbd2da;
border-right: 1px solid #cbd2da;
border-bottom: 1px solid #cbd2da;
border-bottom-left-radius: 9px;
border-bottom-right-radius: 9px;
}
QLabel#agvDialogMark {
color: #ffffff;
background: #1b6ef3;
border-radius: 5px;
font-size: 12px;
font-weight: 700;
}
QLabel#agvDialogTitleBarTitle {
color: #202832;
font-size: 13px;
font-weight: 700;
}
QLabel#agvDialogTitleService {
color: #66727e;
font-size: 12px;
}
QFrame#agvDialogTitleDivider {
color: #d4dae0;
max-height: 18px;
}
QPushButton#agvDialogCloseButton {
min-height: 42px;
padding: 0;
background: transparent;
border: none;
border-radius: 0;
border-top-right-radius: 8px;
}
QPushButton#agvDialogCloseButton:hover {
background: #fde8e8;
border: none;
}
QPushButton#agvDialogCloseButton:pressed {
background: #f9d2d2;
border: none;
}
QCheckBox#agvStatusSwitch {
spacing: 0;
background: transparent;
padding: 0;
}
QCheckBox#agvStatusSwitch::indicator {
width: 44px;
height: 24px;
margin: 0;
padding: 0;
border: none;
border-radius: 0;
background: transparent;
}
QCheckBox#agvStatusSwitch::indicator:unchecked {
image: url(:/icons/toggle-off.svg);
border: none;
background: transparent;
}
QCheckBox#agvStatusSwitch::indicator:checked {
image: url(:/icons/toggle-on.svg);
border: none;
background: transparent;
}
QCheckBox#configEnableSwitch {
spacing: 0;
background: transparent;
padding: 0;
}
QCheckBox#configEnableSwitch::indicator {
width: 44px;
height: 24px;
margin: 0;
padding: 0;
border: none;
background: transparent;
}
QCheckBox#configEnableSwitch::indicator:unchecked {
image: url(:/icons/toggle-off.svg);
}
QCheckBox#configEnableSwitch::indicator:checked {
image: url(:/icons/toggle-on.svg);
}
QCheckBox#agvStatusSwitch::indicator:hover,
QCheckBox#agvStatusSwitch::indicator:unchecked:hover,
QCheckBox#agvStatusSwitch::indicator:checked:hover {
border: none;
background: transparent;
}
QLabel#agvLiveIndicator {
color: #16794b;
background: #e9f7f0;
border: 1px solid #b9dfcc;
border-radius: 11px;
padding: 3px 9px;
font-weight: 600;
}
QLabel#agvStateValue {
color: #26323d;
font-family: Consolas;
font-size: 13px;
font-weight: 600;
}
QLabel#agvNavigationValue {
color: #145da8;
background: #eef5fd;
border-left: 3px solid #237ddd;
border-radius: 4px;
padding: 8px 10px;
}
QPushButton#agvDirectionButton {
min-width: 104px;
min-height: 48px;
padding: 0 12px;
font-weight: 600;
}
QPushButton#agvDirectionButton:hover {
color: #145da8;
background: #edf5ff;
border-color: #9fc5ef;
}
QLabel#agvMapPreview {
color: #71808e;
background: #eef2f6;
border: 1px solid #d8dfe6;
border-radius: 4px;
font-size: 13px;
}
QLabel#metricTitle {
color: #6f7680;
font-size: 12px;
font-weight: 600;
}
QLabel#metricValue {
color: #22272d;
font-size: 25px;
font-weight: 700;
}
QLabel#metricSuffix, QLabel#panelSubtitle, QLabel#mutedLabel {
color: #858c95;
font-size: 11px;
}
QLabel#sectionTitle {
font-size: 15px;
font-weight: 600;
color: #272c32;
}
QLabel#eyebrow {
color: #727a84;
font-size: 11px;
font-weight: 600;
}
QLabel#poseValue {
color: #30363d;
font-family: Consolas;
font-size: 13px;
}
QPushButton {
background: white;
color: #353b43;
border: 1px solid #cfd4da;
border-radius: 4px;
padding: 7px 13px;
min-height: 20px;
font-weight: 500;
}
QPushButton:hover {
background: #f6f8fa;
border-color: #aeb5bd;
}
QPushButton:pressed {
background: #eceff2;
}
QPushButton:disabled {
color: #a8adb4;
background: #f2f3f5;
border-color: #e1e3e6;
}
QPushButton#primaryButton {
background: #1b6ef3;
border-color: #1b6ef3;
color: white;
}
QPushButton#primaryButton:hover {
background: #155dcc;
}
QPushButton#primaryButton:disabled {
background: #b9c4d2;
border-color: #b9c4d2;
color: #f6f8fb;
}
QPushButton#connectButton {
background: #3c82f6;
border-color: #3c82f6;
color: white;
}
QPushButton#dangerButton {
background: #c83e3e;
border-color: #c83e3e;
color: white;
}
QPushButton#dangerButton:hover {
background: #ad3131;
}
QPushButton#dangerButton:disabled {
background: #d8baba;
border-color: #d8baba;
color: #f7eeee;
}
QPushButton#teachModeButton:checked {
background: #e8f0ff;
border-color: #1b6ef3;
color: #155dcc;
}
QLabel#teachJointValue {
background: #eef5fd;
border: none;
border-left: 3px solid #237ddd;
border-radius: 4px;
color: #145da8;
font-family: Consolas;
font-weight: 600;
padding: 0 9px;
}
QFrame#teachSeparator {
color: #e4e7eb;
}
QFrame#armTeachPanel QTableWidget {
border: 1px solid #e3e6ea;
border-radius: 4px;
}
QPushButton#iconButton {
padding: 0;
min-width: 32px;
max-width: 32px;
min-height: 32px;
max-height: 32px;
}
QLineEdit, QSpinBox, QDoubleSpinBox, QComboBox {
background: white;
border: 1px solid #cfd4da;
border-radius: 4px;
padding: 6px 8px;
min-height: 20px;
selection-background-color: #1b6ef3;
}
QLineEdit:focus, QSpinBox:focus, QDoubleSpinBox:focus, QComboBox:focus {
border: 1px solid #1b6ef3;
}
QComboBox {
min-height: 32px;
padding: 0 34px 0 10px;
}
QComboBox::drop-down {
subcontrol-origin: padding;
subcontrol-position: top right;
width: 30px;
background: #f7f9fb;
border: none;
border-left: 1px solid #dce1e6;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
}
QComboBox::drop-down:hover {
background: #eef2f6;
}
QComboBox::down-arrow {
image: url(:/icons/chevron-down.svg);
width: 14px;
height: 14px;
}
QComboBox QAbstractItemView {
background: #ffffff;
color: #27313b;
border: 1px solid #cfd4da;
border-radius: 4px;
padding: 5px;
outline: 0;
show-decoration-selected: 0;
selection-background-color: #edf5ff;
selection-color: #145da8;
}
QComboBox QAbstractItemView::item {
min-height: 32px;
padding: 0 10px;
margin: 1px 0;
color: #33404c;
background: transparent;
border: none;
border-radius: 3px;
}
QComboBox QAbstractItemView::item:hover {
color: #27313b;
background: #f3f7fb;
}
QComboBox QAbstractItemView::item:selected {
color: #145da8;
background: #e8f2ff;
font-weight: 600;
}
QComboBox:on {
border-color: #1b6ef3;
}
QComboBox::drop-down:on {
background: #edf5ff;
border-left-color: #b9d4f4;
}
QSpinBox, QDoubleSpinBox {
min-height: 32px;
padding: 0 31px 0 10px;
}
QSpinBox::up-button, QDoubleSpinBox::up-button {
subcontrol-origin: padding;
subcontrol-position: top right;
width: 26px;
height: 16px;
background: #f7f9fb;
border: none;
border-left: 1px solid #dce1e6;
border-bottom: 1px solid #e4e8ec;
border-top-right-radius: 3px;
}
QSpinBox::down-button, QDoubleSpinBox::down-button {
subcontrol-origin: padding;
subcontrol-position: bottom right;
width: 26px;
height: 16px;
background: #f7f9fb;
border: none;
border-left: 1px solid #dce1e6;
border-bottom-right-radius: 3px;
}
QSpinBox::up-button:hover, QDoubleSpinBox::up-button:hover,
QSpinBox::down-button:hover, QDoubleSpinBox::down-button:hover {
background: #eaf1f8;
}
QSpinBox::up-button:pressed, QDoubleSpinBox::up-button:pressed,
QSpinBox::down-button:pressed, QDoubleSpinBox::down-button:pressed {
background: #dce8f4;
}
QSpinBox::up-arrow, QDoubleSpinBox::up-arrow {
image: url(:/icons/chevron-up.svg);
width: 11px;
height: 11px;
}
QSpinBox::down-arrow, QDoubleSpinBox::down-arrow {
image: url(:/icons/chevron-down.svg);
width: 11px;
height: 11px;
}
QSpinBox#portSpin {
min-height: 30px;
padding: 0 6px;
}
QSpinBox#portSpin::up-button, QSpinBox#portSpin::down-button {
width: 0;
height: 0;
border: none;
background: transparent;
}
QLineEdit:disabled, QSpinBox:disabled, QDoubleSpinBox:disabled,
QComboBox:disabled {
color: #9aa3ad;
background: #f3f5f7;
border-color: #e1e5e9;
}
QCheckBox::indicator {
width: 15px;
height: 15px;
background: #ffffff;
border: 1px solid #bcc4cc;
border-radius: 3px;
}
QCheckBox::indicator:hover {
border-color: #1b6ef3;
}
QCheckBox::indicator:checked {
image: url(:/icons/check.svg);
background: #1b6ef3;
border-color: #1b6ef3;
}
QTableWidget {
background: white;
alternate-background-color: #fafbfc;
border: none;
gridline-color: #edf0f2;
selection-background-color: #e8f2ff;
selection-color: #145da8;
outline: 0;
}
QHeaderView::section {
background: #f4f6f8;
color: #626a74;
border: none;
border-bottom: 1px solid #dfe3e7;
padding: 7px 8px;
font-size: 11px;
font-weight: 600;
}
QTableWidget::item {
padding: 5px 8px;
border-bottom: 1px solid #eef0f2;
}
QTableWidget::item:hover {
color: #27313b;
background: #f3f7fb;
}
QTableWidget::item:selected,
QTableWidget::item:selected:active,
QTableWidget::item:selected:!active {
color: #145da8;
background: #e8f2ff;
border-bottom: 1px solid #d7e7fa;
}
QTableWidget::item:focus {
outline: none;
}
QScrollBar:vertical {
width: 10px;
background: transparent;
}
QScrollBar::handle:vertical {
background: #c7ccd2;
min-height: 30px;
border-radius: 4px;
}
QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical {
height: 0;
}
QTextEdit#logView {
background: #171b20;
color: #cdd4dc;
border: none;
border-radius: 4px;
padding: 8px;
font-family: Consolas;
font-size: 12px;
}
QTextEdit#rpcEditor {
background: #f8f9fb;
color: #252b32;
border: 1px solid #d9dde2;
border-radius: 4px;
padding: 8px;
font-family: Consolas;
font-size: 12px;
}
VideoRenderWidget#imageView {
background: #1d2228;
border: 1px solid #363d46;
border-radius: 4px;
color: #87909a;
}
QProgressBar {
background: #e8ebef;
border: none;
border-radius: 2px;
height: 4px;
}
QProgressBar::chunk {
background: #218c74;
border-radius: 2px;
}
QFrame#armJogPanel {
background: #ffffff;
border: 1px solid #dce2e8;
border-radius: 5px;
}
QTabWidget#armJogModeTabs::pane {
border: none;
border-top: 1px solid #e1e6eb;
background: #ffffff;
}
QTabWidget#armJogModeTabs QTabBar::tab {
min-width: 150px;
min-height: 32px;
padding: 0 18px;
color: #64717d;
background: #f2f5f8;
border: 1px solid #dbe2e8;
}
QTabWidget#armJogModeTabs QTabBar::tab:selected {
color: #155dcc;
background: #edf5ff;
border-color: #8db9f3;
font-weight: 600;
}
QFrame#jogAxisRow {
background: transparent;
border: none;
}
QLabel#jogCurrentValue {
color: #34485c;
font-family: Consolas;
font-weight: 600;
}
QPushButton#jogDirectionButton {
min-width: 38px;
max-width: 38px;
min-height: 32px;
max-height: 32px;
padding: 0;
color: #1168d8;
background: #ffffff;
border: 1px solid #cbd8e6;
border-radius: 4px;
font-size: 19px;
font-weight: 600;
}
QPushButton#jogDirectionButton:hover {
background: #edf5ff;
border-color: #70a8eb;
}
QPushButton#jogDirectionButton:pressed {
color: #ffffff;
background: #1b6ef3;
border-color: #1b6ef3;
}
QSlider#jogDirectionIndicator::groove:horizontal {
height: 5px;
background: #d7dee6;
border-radius: 2px;
}
QSlider#jogDirectionIndicator::sub-page:horizontal {
background: #1b78ef;
border-radius: 2px;
}
QSlider#jogDirectionIndicator::handle:horizontal {
width: 12px;
margin: -5px 0;
background: #ffffff;
border: 1px solid #c7d2dd;
border-radius: 6px;
}
QLabel#accentValue {
color: #1475e8;
font-weight: 700;
}
QLabel#armReadyLabel {
color: #168347;
font-weight: 600;
}
QPushButton#dangerOutlineButton {
color: #c9363e;
background: #ffffff;
border: 1px solid #e74a51;
border-radius: 4px;
font-weight: 600;
}
QPushButton#dangerOutlineButton:hover {
color: #ffffff;
background: #d94349;
}
QToolTip {
background: #272c32;
color: white;
border: none;
padding: 5px;
}
QFrame#bottomStatusBar {
background: #ffffff;
border: none;
border-top: 1px solid #dce1e6;
}
QLabel#bottomLogLevel {
color: #62707a;
font-weight: 600;
}
QLabel#bottomLogLevel[level="ok"] {
color: #177553;
}
QLabel#bottomLogLevel[level="warn"] {
color: #b26b14;
}
QLabel#bottomLogLevel[level="error"] {
color: #bd343b;
}
QLabel#bottomLogMessage {
color: #68737e;
}
QLabel#bottomVersion {
color: #68737e;
font-family: Consolas;
}