/* Apart Concept 1 Controller - Dark theme */ QWidget { background-color: #1e2127; color: #e6e6e6; font-family: "Segoe UI", "Noto Sans", "DejaVu Sans", sans-serif; font-size: 10.5pt; } QMainWindow, QDialog { background-color: #1a1d23; } QToolTip { background-color: #2b2f38; color: #e6e6e6; border: 1px solid #3a3f4b; padding: 4px; border-radius: 4px; } /* Group boxes / cards */ QGroupBox { background-color: #242830; border: 1px solid #323743; border-radius: 10px; margin-top: 14px; padding: 12px; font-weight: 600; } QGroupBox::title { subcontrol-origin: margin; subcontrol-position: top left; left: 12px; padding: 0 6px; color: #8ab4f8; } /* Tabs */ QTabWidget::pane { border: 1px solid #323743; border-radius: 10px; top: -1px; background: #20242b; } QTabBar::tab { background: transparent; color: #9aa0ab; padding: 9px 18px; margin-right: 4px; border-top-left-radius: 8px; border-top-right-radius: 8px; font-weight: 600; } QTabBar::tab:hover { color: #e6e6e6; } QTabBar::tab:selected { background: #2d3340; color: #8ab4f8; } /* Buttons */ QPushButton { background-color: #2d3340; color: #e6e6e6; border: 1px solid #3a4150; border-radius: 8px; padding: 7px 16px; font-weight: 600; } QPushButton:hover { background-color: #353c4b; border-color: #4a90e2; } QPushButton:pressed { background-color: #283046; } QPushButton:disabled { color: #5a606b; background-color: #23272e; border-color: #2c313a; } QPushButton#accent { background-color: #4a90e2; color: #ffffff; border: none; } QPushButton#accent:hover { background-color: #5a9ff0; } QPushButton#accent:disabled { background-color: #324a66; color: #93a3b5; } QPushButton#danger { background-color: #c0392b; color: #ffffff; border: none; } QPushButton#danger:hover { background-color: #d8463a; } /* Combo boxes */ QComboBox { background-color: #2a2f3a; border: 1px solid #3a4150; border-radius: 8px; padding: 6px 10px; min-height: 18px; } QComboBox:hover { border-color: #4a90e2; } QComboBox::drop-down { border: none; width: 22px; } QComboBox QAbstractItemView { background-color: #2a2f3a; border: 1px solid #3a4150; selection-background-color: #4a90e2; selection-color: #ffffff; outline: none; } /* Spin boxes / line edits */ QSpinBox, QLineEdit { background-color: #2a2f3a; border: 1px solid #3a4150; border-radius: 8px; padding: 6px 8px; selection-background-color: #4a90e2; } QSpinBox:hover, QLineEdit:hover { border-color: #4a90e2; } QSpinBox:focus, QLineEdit:focus { border-color: #5a9ff0; } /* Sliders */ QSlider::groove:horizontal { height: 6px; background: #353b47; border-radius: 3px; } QSlider::sub-page:horizontal { background: #4a90e2; border-radius: 3px; } QSlider::handle:horizontal { background: #e6e6e6; width: 18px; height: 18px; margin: -7px 0; border-radius: 9px; } QSlider::handle:horizontal:hover { background: #ffffff; } /* Check boxes / toggles */ QCheckBox { spacing: 8px; } QCheckBox::indicator { width: 18px; height: 18px; border-radius: 5px; border: 1px solid #4a5160; background: #2a2f3a; } QCheckBox::indicator:checked { background: #4a90e2; border-color: #4a90e2; image: none; } QCheckBox::indicator:hover { border-color: #5a9ff0; } /* Labels */ QLabel#title { font-size: 16pt; font-weight: 700; color: #ffffff; } QLabel#subtle { color: #9aa0ab; } QLabel#statusOk { color: #4caf78; font-weight: 600; } QLabel#statusBad { color: #e06c5b; font-weight: 600; } QLabel#valueBadge { background: #2d3340; border: 1px solid #3a4150; border-radius: 6px; padding: 3px 8px; font-weight: 600; color: #8ab4f8; } /* Terminal text view */ QPlainTextEdit#terminal { background-color: #15171c; color: #c8d0da; border: 1px solid #2c313a; border-radius: 8px; font-family: "JetBrains Mono", "DejaVu Sans Mono", monospace; font-size: 10pt; } /* Scrollbars */ QScrollBar:vertical { background: transparent; width: 12px; margin: 2px; } QScrollBar::handle:vertical { background: #3a4150; border-radius: 5px; min-height: 24px; } QScrollBar::handle:vertical:hover { background: #4a90e2; } QScrollBar::add-line, QScrollBar::sub-line { height: 0; } QStatusBar { background: #15171c; color: #9aa0ab; } QStatusBar::item { border: none; }