From a999ce3d361aa3636c24231f0556c6ebba8b1e92 Mon Sep 17 00:00:00 2001 From: davide3011 Date: Tue, 13 Jan 2026 11:03:39 +0100 Subject: [PATCH] Refine Qt GUI layout and adjust dark theme styling --- src/qt/palladiumgui.cpp | 2 +- src/qt/res/styles/dark.qss | 183 ++-------- src/qt/res/styles/dark.qss.backup | 582 ++++++++++++++++++++++++++++++ 3 files changed, 616 insertions(+), 151 deletions(-) create mode 100644 src/qt/res/styles/dark.qss.backup diff --git a/src/qt/palladiumgui.cpp b/src/qt/palladiumgui.cpp index dd4a393..a3d96bb 100644 --- a/src/qt/palladiumgui.cpp +++ b/src/qt/palladiumgui.cpp @@ -267,7 +267,7 @@ PalladiumGUI::PalladiumGUI(interfaces::Node& node, const PlatformStyle *_platfor // Set minimum window size to prevent UI breaking // Must be set AFTER all widgets are configured to ensure it's not overridden - setMinimumSize(850, 550); + setMinimumSize(950, 550); } PalladiumGUI::~PalladiumGUI() diff --git a/src/qt/res/styles/dark.qss b/src/qt/res/styles/dark.qss index b54722e..69f0315 100644 --- a/src/qt/res/styles/dark.qss +++ b/src/qt/res/styles/dark.qss @@ -1,18 +1,28 @@ /* ======================================================= - PALLADIUM CORE DARK THEME - Refined Borders Edition + PALLADIUM CORE DARK THEME - Color Only Edition ======================================================= */ -/* --- BORDER COLOR PALETTE --- - Subtle borders: #404040 (Separators, discrete lines) - Standard borders: #4A4A4A (Containers, inputs) - Emphasized borders: #5A5A5A (Focus, active elements) - Hover borders: #606060 (Interactive feedback) +/* This stylesheet only overrides colors and inherits all + dimensional properties (padding, margin, border-radius, + sizes) from Qt defaults to ensure identical layout + between dark and light themes. */ - Border Radius Strategy: - Small elements: 5px (Buttons, inputs) - Medium elements: 6px (Tabs, cards) - Large elements: 8px (Containers, panels) - Dialogs/Modals: 10px (Top-level windows) +/* --- COLOR PALETTE --- + Background dark: #2D2D2D (Main background) + Background darker: #1E1E1E (Input fields, tables) + Background lighter: #3D3D3D (Toolbars, elevated surfaces) + + Text primary: #E0E0E0 (Main text) + Text secondary: #AAAAAA (Muted text) + Text disabled: #6A6A6A (Disabled state) + + Borders subtle: #404040 (Separators, discrete lines) + Borders standard: #4A4A4A (Containers, inputs) + Borders emphasized: #5A5A5A (Focus, active elements) + Borders hover: #606060 (Interactive feedback) + + Accent primary: #007BFF (Selection, focus, active) + Accent hover: #0069D9 (Accent hover state) */ /* --- BASE WIDGETS --- */ @@ -21,7 +31,6 @@ QWidget { color: #E0E0E0; selection-background-color: #007BFF; selection-color: #FFFFFF; - outline: none; } /* --- MENU BAR --- */ @@ -29,14 +38,10 @@ QMenuBar { background-color: #2D2D2D; color: #E0E0E0; border-bottom: 1px solid #404040; - padding: 2px; } QMenuBar::item { background-color: transparent; - padding: 6px 10px; - border-radius: 5px; - margin: 2px; } QMenuBar::item:selected { @@ -48,41 +53,26 @@ QMenuBar::item:selected { QMenu { background-color: #2D2D2D; border: 1px solid #4A4A4A; - border-radius: 6px; - padding: 4px; -} - -QMenu::item { - padding: 6px 20px; - border-radius: 4px; - margin: 2px; } QMenu::item:selected { background-color: #007BFF; color: white; - border: 1px solid #007BFF; } QMenu::separator { - height: 1px; background: #404040; - margin: 4px 8px; } /* --- TOOLBAR --- */ QToolBar { background-color: #3D3D3D; border-bottom: 1px solid #404040; - padding: 3px; - spacing: 5px; } QToolButton { background-color: transparent; border: 1px solid transparent; - border-radius: 5px; - padding: 5px; color: #E0E0E0; } @@ -105,39 +95,25 @@ QToolButton:checked { /* --- TABS --- */ QTabWidget::pane { border: 1px solid #4A4A4A; - border-radius: 6px; background-color: #2D2D2D; } QTabBar::tab { background: #1E1E1E; color: #AAAAAA; - padding: 8px 20px; border: 1px solid #4A4A4A; - border-bottom: none; - border-top-left-radius: 6px; - border-top-right-radius: 6px; - margin-right: 2px; - min-width: 80px; } QTabBar::tab:hover { background: #252525; color: #E0E0E0; border: 1px solid #5A5A5A; - border-bottom: none; } QTabBar::tab:selected { background: #2D2D2D; color: #FFFFFF; border: 1px solid #4A4A4A; - border-bottom: 1px solid #2D2D2D; - font-weight: bold; -} - -QTabBar::tab:!selected { - margin-top: 2px; } /* --- INPUT FIELDS --- */ @@ -145,8 +121,6 @@ QLineEdit, QTextEdit, QPlainTextEdit, QSpinBox, QDoubleSpinBox { background-color: #1E1E1E; color: #FFFFFF; border: 1px solid #4A4A4A; - border-radius: 5px; - padding: 6px 8px; selection-background-color: #007BFF; } @@ -158,9 +132,8 @@ QSpinBox:hover, QDoubleSpinBox:hover { QLineEdit:focus, QTextEdit:focus, QPlainTextEdit:focus, QSpinBox:focus, QDoubleSpinBox:focus { - border: 2px solid #007BFF; + border: 1px solid #007BFF; background-color: #252525; - padding: 5px 7px; /* Compensate for thicker border */ } QLineEdit:disabled, QTextEdit:disabled, QPlainTextEdit:disabled, @@ -174,9 +147,6 @@ QSpinBox:disabled, QDoubleSpinBox:disabled { QSpinBox::up-button, QDoubleSpinBox::up-button, QSpinBox::down-button, QDoubleSpinBox::down-button { background-color: transparent; - border: none; - border-radius: 3px; - width: 16px; } QSpinBox::up-button:hover, QDoubleSpinBox::up-button:hover, @@ -191,12 +161,11 @@ QTableView, QListView, QTreeWidget, QTreeView { color: #E0E0E0; gridline-color: #404040; border: 1px solid #4A4A4A; - border-radius: 6px; selection-background-color: #007BFF; } QTableView:focus, QListView:focus, QTreeWidget:focus, QTreeView:focus { - border: 2px solid #5A5A5A; + border: 1px solid #5A5A5A; } QTableView::item:hover, QListView::item:hover, @@ -213,11 +182,9 @@ QTreeWidget::item:selected, QTreeView::item:selected { QHeaderView::section { background-color: #333; color: #E0E0E0; - padding: 6px 4px; border: none; border-right: 1px solid #404040; border-bottom: 1px solid #4A4A4A; - font-weight: 600; } QHeaderView::section:hover { @@ -225,66 +192,36 @@ QHeaderView::section:hover { border-bottom: 1px solid #5A5A5A; } -QHeaderView::section:first { - border-top-left-radius: 6px; -} - -QHeaderView::section:last { - border-right: none; -} - /* --- SCROLLBARS --- */ QScrollBar:vertical { background: #1E1E1E; - width: 12px; - border-radius: 6px; - margin: 2px; } QScrollBar::handle:vertical { background: #4A4A4A; - border-radius: 6px; - min-height: 30px; } QScrollBar::handle:vertical:hover { background: #5A5A5A; } -QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical { - height: 0px; -} - QScrollBar:horizontal { background: #1E1E1E; - height: 12px; - border-radius: 6px; - margin: 2px; } QScrollBar::handle:horizontal { background: #4A4A4A; - border-radius: 6px; - min-width: 30px; } QScrollBar::handle:horizontal:hover { background: #5A5A5A; } -QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal { - width: 0px; -} - /* --- BUTTONS --- */ QPushButton { background-color: #444; border: 1px solid #5A5A5A; - border-radius: 5px; - padding: 6px 16px; color: white; - font-weight: 500; - min-height: 24px; } QPushButton:hover { @@ -294,8 +231,7 @@ QPushButton:hover { QPushButton:pressed { background-color: #3A3A3A; - border: 2px solid #007BFF; - padding: 5px 15px; /* Compensate for thicker border */ + border: 1px solid #007BFF; } QPushButton:disabled { @@ -317,15 +253,11 @@ QPushButton:default:hover { /* --- CHECKBOXES --- */ QCheckBox { - spacing: 8px; color: #E0E0E0; } QCheckBox::indicator { - width: 18px; - height: 18px; border: 1px solid #4A4A4A; - border-radius: 4px; background-color: #1E1E1E; } @@ -337,7 +269,6 @@ QCheckBox::indicator:hover { QCheckBox::indicator:checked { background-color: #007BFF; border: 1px solid #007BFF; - image: url(:/icons/check); } QCheckBox::indicator:disabled { @@ -347,15 +278,11 @@ QCheckBox::indicator:disabled { /* --- RADIO BUTTONS --- */ QRadioButton { - spacing: 8px; color: #E0E0E0; } QRadioButton::indicator { - width: 18px; - height: 18px; border: 1px solid #4A4A4A; - border-radius: 9px; background-color: #1E1E1E; } @@ -379,9 +306,6 @@ QComboBox { background-color: #1E1E1E; color: #E0E0E0; border: 1px solid #4A4A4A; - border-radius: 5px; - padding: 6px 8px; - min-height: 24px; } QComboBox:hover { @@ -390,16 +314,12 @@ QComboBox:hover { } QComboBox:focus { - border: 2px solid #007BFF; - padding: 5px 7px; /* Compensate for thicker border */ + border: 1px solid #007BFF; } QComboBox::drop-down { border: none; border-left: 1px solid #404040; - width: 20px; - border-top-right-radius: 5px; - border-bottom-right-radius: 5px; } QComboBox::drop-down:hover { @@ -410,7 +330,6 @@ QComboBox::drop-down:hover { QComboBox QAbstractItemView { background-color: #2D2D2D; border: 1px solid #4A4A4A; - border-radius: 5px; selection-background-color: #007BFF; selection-color: white; } @@ -419,31 +338,21 @@ QComboBox QAbstractItemView { QProgressBar { background-color: #1E1E1E; border: 1px solid #4A4A4A; - border-radius: 5px; - text-align: center; color: #E0E0E0; - height: 20px; } QProgressBar::chunk { background-color: #007BFF; - border-radius: 4px; } /* --- SLIDER --- */ QSlider::groove:horizontal { background: #1E1E1E; - height: 6px; - border-radius: 3px; border: 1px solid #4A4A4A; } QSlider::handle:horizontal { background: #007BFF; - width: 16px; - height: 16px; - margin: -6px 0; - border-radius: 8px; border: 2px solid #007BFF; } @@ -455,18 +364,11 @@ QSlider::handle:horizontal:hover { /* --- GROUP BOX --- */ QGroupBox { border: 1px solid #4A4A4A; - border-radius: 8px; - margin-top: 12px; - padding-top: 10px; - font-weight: 600; color: #E0E0E0; } QGroupBox::title { color: #E0E0E0; - subcontrol-origin: margin; - subcontrol-position: top left; - padding: 0 8px; background-color: #2D2D2D; } @@ -479,14 +381,6 @@ QSplitter::handle:hover { background-color: #5A5A5A; } -QSplitter::handle:horizontal { - width: 2px; -} - -QSplitter::handle:vertical { - height: 2px; -} - /* --- STATUS BAR --- */ QStatusBar { background-color: #2D2D2D; @@ -503,30 +397,20 @@ QToolTip { background-color: #3A3A3A; color: #E0E0E0; border: 1px solid #5A5A5A; - border-radius: 5px; - padding: 4px 8px; -} - -/* --- DIALOG BUTTONS --- */ -QDialogButtonBox QPushButton { - min-width: 80px; } /* --- FRAME --- */ QFrame[frameShape="StyledPanel"], QFrame[frameShape="Box"] { - border: 1px solid #4A4A4A; - border-radius: 6px; + border-color: #4A4A4A; } QFrame[frameShape="HLine"] { - border: none; - border-top: 1px solid #404040; + border-top-color: #404040; } QFrame[frameShape="VLine"] { - border: none; - border-left: 1px solid #404040; + border-left-color: #404040; } /* --- SEND COINS ENTRY (Dark Mode Fix) --- */ @@ -534,7 +418,6 @@ QFrame[frameShape="VLine"] { QFrame#SendCoins_UnauthenticatedPaymentRequest { background-color: #3A3A00; /* Dark yellow/warning background */ border: 1px solid #5A5A00; - border-radius: 6px; color: #FFFF99; /* Light yellow text */ } @@ -549,8 +432,6 @@ PalladiumAmountField QAbstractSpinBox { background-color: #1E1E1E; color: #FFFFFF; border: 1px solid #4A4A4A; - border-radius: 5px; - padding: 6px 8px; } PalladiumAmountField QAbstractSpinBox:hover { @@ -559,19 +440,21 @@ PalladiumAmountField QAbstractSpinBox:hover { } PalladiumAmountField QAbstractSpinBox:focus { - border: 2px solid #007BFF; + border: 1px solid #007BFF; background-color: #252525; - padding: 5px 7px; } PalladiumAmountField QComboBox { background-color: #1E1E1E; color: #E0E0E0; border: 1px solid #4A4A4A; - border-radius: 5px; } PalladiumAmountField QComboBox:hover { border: 1px solid #5A5A5A; background-color: #252525; } + +PalladiumAmountField QComboBox:focus { + border: 1px solid #007BFF; +} diff --git a/src/qt/res/styles/dark.qss.backup b/src/qt/res/styles/dark.qss.backup new file mode 100644 index 0000000..cfafd56 --- /dev/null +++ b/src/qt/res/styles/dark.qss.backup @@ -0,0 +1,582 @@ +/* ======================================================= + PALLADIUM CORE DARK THEME - Refined Borders Edition + ======================================================= */ + +/* --- BORDER COLOR PALETTE --- + Subtle borders: #404040 (Separators, discrete lines) + Standard borders: #4A4A4A (Containers, inputs) + Emphasized borders: #5A5A5A (Focus, active elements) + Hover borders: #606060 (Interactive feedback) + + Border Radius Strategy: + Small elements: 5px (Buttons, inputs) + Medium elements: 6px (Tabs, cards) + Large elements: 8px (Containers, panels) + Dialogs/Modals: 10px (Top-level windows) +*/ + +/* --- BASE WIDGETS --- */ +QWidget { + background-color: #2D2D2D; + color: #E0E0E0; + selection-background-color: #007BFF; + selection-color: #FFFFFF; + outline: none; +} + +/* --- MENU BAR --- */ +QMenuBar { + background-color: #2D2D2D; + color: #E0E0E0; + border-bottom: 1px solid #404040; + padding: 2px; +} + +QMenuBar::item { + background-color: transparent; + padding: 6px 10px; + border-radius: 5px; + margin: 2px; +} + +QMenuBar::item:selected { + background-color: #3A3A3A; + border: 1px solid #4A4A4A; +} + +/* --- MENUS --- */ +QMenu { + background-color: #2D2D2D; + border: 1px solid #4A4A4A; + border-radius: 6px; + padding: 4px; +} + +QMenu::item { + padding: 6px 20px; + border-radius: 4px; + margin: 2px; +} + +QMenu::item:selected { + background-color: #007BFF; + color: white; + border: 1px solid #007BFF; +} + +QMenu::separator { + height: 1px; + background: #404040; + margin: 4px 8px; +} + +/* --- TOOLBAR --- */ +QToolBar { + background-color: #3D3D3D; + border-bottom: 1px solid #404040; + padding: 3px; + spacing: 5px; +} + +QToolButton { + background-color: transparent; + border: 1px solid transparent; + border-radius: 5px; + padding: 5px; + color: #E0E0E0; +} + +QToolButton:hover { + background-color: #4D4D4D; + border: 1px solid #5A5A5A; +} + +QToolButton:pressed { + background-color: #3A3A3A; + border: 1px solid #606060; +} + +QToolButton:checked { + background-color: #007BFF; + color: white; + border: 1px solid #007BFF; +} + +/* --- TABS --- */ +QTabWidget::pane { + border: 1px solid #4A4A4A; + border-radius: 6px; + background-color: #2D2D2D; +} + +QTabBar::tab { + background: #1E1E1E; + color: #AAAAAA; + padding: 8px 20px; + border: 1px solid #4A4A4A; + border-bottom: none; + border-top-left-radius: 6px; + border-top-right-radius: 6px; + margin-right: 2px; + min-width: 80px; +} + +QTabBar::tab:hover { + background: #252525; + color: #E0E0E0; + border: 1px solid #5A5A5A; + border-bottom: none; +} + +QTabBar::tab:selected { + background: #2D2D2D; + color: #FFFFFF; + border: 1px solid #4A4A4A; + border-bottom: 1px solid #2D2D2D; + font-weight: bold; +} + +QTabBar::tab:!selected { + margin-top: 2px; +} + +/* --- INPUT FIELDS --- */ +QLineEdit, QTextEdit, QPlainTextEdit, QSpinBox, QDoubleSpinBox { + background-color: #1E1E1E; + color: #FFFFFF; + border: 1px solid #4A4A4A; + border-radius: 5px; + padding: 6px 8px; + selection-background-color: #007BFF; +} + +QLineEdit:hover, QTextEdit:hover, QPlainTextEdit:hover, +QSpinBox:hover, QDoubleSpinBox:hover { + border: 1px solid #5A5A5A; + background-color: #252525; +} + +QLineEdit:focus, QTextEdit:focus, QPlainTextEdit:focus, +QSpinBox:focus, QDoubleSpinBox:focus { + border: 1px solid #007BFF; /* Keep 1px to prevent layout shift */ + background-color: #252525; +} + +QLineEdit:disabled, QTextEdit:disabled, QPlainTextEdit:disabled, +QSpinBox:disabled, QDoubleSpinBox:disabled { + background-color: #1E1E1E; + color: #6A6A6A; + border: 1px solid #404040; +} + +/* --- SPIN BOX BUTTONS --- */ +QSpinBox::up-button, QDoubleSpinBox::up-button, +QSpinBox::down-button, QDoubleSpinBox::down-button { + background-color: transparent; + border: none; + border-radius: 3px; + width: 16px; +} + +QSpinBox::up-button:hover, QDoubleSpinBox::up-button:hover, +QSpinBox::down-button:hover, QDoubleSpinBox::down-button:hover { + background-color: #3A3A3A; +} + +/* --- LISTS & TABLES --- */ +QTableView, QListView, QTreeWidget, QTreeView { + background-color: #1E1E1E; + alternate-background-color: #252525; + color: #E0E0E0; + gridline-color: #404040; + border: 1px solid #4A4A4A; + border-radius: 6px; + selection-background-color: #007BFF; +} + +QTableView:focus, QListView:focus, QTreeWidget:focus, QTreeView:focus { + border: 1px solid #5A5A5A; /* Keep 1px to prevent layout shift */ +} + +QTableView::item:hover, QListView::item:hover, +QTreeWidget::item:hover, QTreeView::item:hover { + background-color: #3A3A3A; +} + +QTableView::item:selected, QListView::item:selected, +QTreeWidget::item:selected, QTreeView::item:selected { + background-color: #007BFF; + color: #FFFFFF; +} + +QHeaderView::section { + background-color: #333; + color: #E0E0E0; + padding: 6px 4px; + border: none; + border-right: 1px solid #404040; + border-bottom: 1px solid #4A4A4A; + font-weight: 600; +} + +QHeaderView::section:hover { + background-color: #3A3A3A; + border-bottom: 1px solid #5A5A5A; +} + +QHeaderView::section:first { + border-top-left-radius: 6px; +} + +QHeaderView::section:last { + border-right: none; +} + +/* --- SCROLLBARS --- */ +QScrollBar:vertical { + background: #1E1E1E; + width: 12px; + border-radius: 6px; + margin: 2px; +} + +QScrollBar::handle:vertical { + background: #4A4A4A; + border-radius: 6px; + min-height: 30px; +} + +QScrollBar::handle:vertical:hover { + background: #5A5A5A; +} + +QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical { + height: 0px; +} + +QScrollBar:horizontal { + background: #1E1E1E; + height: 12px; + border-radius: 6px; + margin: 2px; +} + +QScrollBar::handle:horizontal { + background: #4A4A4A; + border-radius: 6px; + min-width: 30px; +} + +QScrollBar::handle:horizontal:hover { + background: #5A5A5A; +} + +QScrollBar::add-line:horizontal, QScrollBar::sub-line:horizontal { + width: 0px; +} + +/* --- BUTTONS --- */ +QPushButton { + background-color: #444; + border: 1px solid #5A5A5A; + border-radius: 5px; + padding: 6px 16px; + color: white; + font-weight: 500; + min-height: 24px; +} + +QPushButton:hover { + background-color: #555; + border: 1px solid #606060; +} + +QPushButton:pressed { + background-color: #3A3A3A; + border: 1px solid #007BFF; /* Keep 1px to prevent layout shift */ +} + +QPushButton:disabled { + background-color: #2D2D2D; + color: #6A6A6A; + border: 1px solid #404040; +} + +QPushButton:default { + background-color: #007BFF; + color: white; + border: 1px solid #007BFF; +} + +QPushButton:default:hover { + background-color: #0069D9; + border: 1px solid #0069D9; +} + +/* --- CHECKBOXES --- */ +QCheckBox { + spacing: 8px; + color: #E0E0E0; +} + +QCheckBox::indicator { + width: 18px; + height: 18px; + border: 1px solid #4A4A4A; + border-radius: 4px; + background-color: #1E1E1E; +} + +QCheckBox::indicator:hover { + border: 1px solid #5A5A5A; + background-color: #252525; +} + +QCheckBox::indicator:checked { + background-color: #007BFF; + border: 1px solid #007BFF; + image: url(:/icons/check); +} + +QCheckBox::indicator:disabled { + background-color: #1E1E1E; + border: 1px solid #404040; +} + +/* --- RADIO BUTTONS --- */ +QRadioButton { + spacing: 8px; + color: #E0E0E0; +} + +QRadioButton::indicator { + width: 18px; + height: 18px; + border: 1px solid #4A4A4A; + border-radius: 9px; + background-color: #1E1E1E; +} + +QRadioButton::indicator:hover { + border: 1px solid #5A5A5A; + background-color: #252525; +} + +QRadioButton::indicator:checked { + background-color: #007BFF; + border: 2px solid #007BFF; +} + +QRadioButton::indicator:disabled { + background-color: #1E1E1E; + border: 1px solid #404040; +} + +/* --- COMBO BOX --- */ +QComboBox { + background-color: #1E1E1E; + color: #E0E0E0; + border: 1px solid #4A4A4A; + border-radius: 5px; + padding: 6px 8px; + min-height: 24px; +} + +QComboBox:hover { + border: 1px solid #5A5A5A; + background-color: #252525; +} + +QComboBox:focus { + border: 1px solid #007BFF; /* Keep 1px to prevent layout shift */ +} + +QComboBox::drop-down { + border: none; + border-left: 1px solid #404040; + width: 20px; + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; +} + +QComboBox::drop-down:hover { + background-color: #3A3A3A; + border-left: 1px solid #5A5A5A; +} + +QComboBox QAbstractItemView { + background-color: #2D2D2D; + border: 1px solid #4A4A4A; + border-radius: 5px; + selection-background-color: #007BFF; + selection-color: white; +} + +/* --- PROGRESS BAR --- */ +QProgressBar { + background-color: #1E1E1E; + border: 1px solid #4A4A4A; + border-radius: 5px; + text-align: center; + color: #E0E0E0; + height: 20px; +} + +QProgressBar::chunk { + background-color: #007BFF; + border-radius: 4px; +} + +/* --- SLIDER --- */ +QSlider::groove:horizontal { + background: #1E1E1E; + height: 6px; + border-radius: 3px; + border: 1px solid #4A4A4A; +} + +QSlider::handle:horizontal { + background: #007BFF; + width: 16px; + height: 16px; + margin: -6px 0; + border-radius: 8px; + border: 2px solid #007BFF; +} + +QSlider::handle:horizontal:hover { + background: #0069D9; + border: 2px solid #0069D9; +} + +/* --- GROUP BOX --- */ +QGroupBox { + border: 1px solid #4A4A4A; + border-radius: 8px; + margin-top: 12px; + padding-top: 10px; + font-weight: 600; + color: #E0E0E0; +} + +QGroupBox::title { + color: #E0E0E0; + subcontrol-origin: margin; + subcontrol-position: top left; + padding: 0 8px; + background-color: #2D2D2D; +} + +/* --- SPLITTER --- */ +QSplitter::handle { + background-color: #4A4A4A; +} + +QSplitter::handle:hover { + background-color: #5A5A5A; +} + +QSplitter::handle:horizontal { + width: 2px; +} + +QSplitter::handle:vertical { + height: 2px; +} + +/* --- STATUS BAR --- */ +QStatusBar { + background-color: #2D2D2D; + color: #888; + border-top: 1px solid #404040; +} + +QStatusBar::item { + border: none; +} + +/* --- TOOLTIPS --- */ +QToolTip { + background-color: #3A3A3A; + color: #E0E0E0; + border: 1px solid #5A5A5A; + border-radius: 5px; + padding: 4px 8px; +} + +/* --- DIALOG BUTTONS --- */ +QDialogButtonBox QPushButton { + min-width: 80px; +} + +/* --- FRAME --- */ +QFrame[frameShape="StyledPanel"], +QFrame[frameShape="Box"] { + border: 1px solid #4A4A4A; + border-radius: 6px; +} + +QFrame[frameShape="HLine"] { + border: none; + border-top: 1px solid #404040; +} + +QFrame[frameShape="VLine"] { + border: none; + border-left: 1px solid #404040; +} + +/* --- SEND COINS ENTRY (Dark Mode Fix) --- */ +/* Payment request warning frame */ +QFrame#SendCoins_UnauthenticatedPaymentRequest { + background-color: #3A3A00; /* Dark yellow/warning background */ + border: 1px solid #5A5A00; + border-radius: 6px; + color: #FFFF99; /* Light yellow text */ +} + +QFrame#SendCoins_UnauthenticatedPaymentRequest QLabel { + color: #FFFF99; /* Light yellow text for labels */ + background-color: transparent; +} + +/* --- PALLADIUM AMOUNT FIELD (Dark Mode Fix) --- */ +/* Fix for Amount field background in Send/Receive pages */ +PalladiumAmountField QAbstractSpinBox { + background-color: #1E1E1E; + color: #FFFFFF; + border: 1px solid #4A4A4A; + border-radius: 5px; + padding: 6px 8px; + /* Fixed size to prevent layout shift between modes */ + min-height: 24px; +} + +PalladiumAmountField QAbstractSpinBox:hover { + border: 1px solid #5A5A5A; + background-color: #252525; +} + +PalladiumAmountField QAbstractSpinBox:focus { + border: 1px solid #007BFF; /* Keep 1px to prevent size change */ + background-color: #252525; +} + +PalladiumAmountField QComboBox { + background-color: #1E1E1E; + color: #E0E0E0; + border: 1px solid #4A4A4A; + border-radius: 5px; + padding: 6px 8px; + /* Fixed size to prevent layout shift between modes */ + min-height: 24px; +} + +PalladiumAmountField QComboBox:hover { + border: 1px solid #5A5A5A; + background-color: #252525; +} + +PalladiumAmountField QComboBox:focus { + border: 1px solid #007BFF; /* Keep 1px to prevent size change */ +}