/*
ABOUT
============================================================================================================
Revised stylesheet based on the original from Pablo Gil Fernández made by MisterMaker

KNOWN BUGS and TO DO
============================================================================================================
Please, follow the link to get updated information:
https://forum.freecad.org/viewtopic.php?t=78431

INSTALLATION WHEN NECESSARY
============================================================================================================
1) Place the .qss files and /images/ folder in the path that fits your OS:
    OSX = /Users/[YOUR_USER_NAME]/Library/Preferences/FreeCAD/Gui/Stylesheets/
    WINDOWS = C:/[INSTALLATION_PATH]/FreeCAD/data/Gui/Stylesheets/
    LINUX = /home/[YOUR_USER_NAME]/.FreeCAD/Gui/Stylesheets/

============================================================================================================
TO MODIFY USE THESE COLORS:
 #4882ff
 #3f7cff


See Qt documentation:

  - https://doc.qt.io/qt-5/stylesheet.html
  - https://doc.qt.io/qt-5/stylesheet-reference.html
  - https://doc.qt.io/qt-5/stylesheet-examples.html

--------------------------------------------------------------------------- */


/* Reset elements ------------------------------------------------------------

Resetting everything helps to unify styles across different operating systems

--------------------------------------------------------------------------- */
* {
    padding: 0px;
    margin: 0px;
    border: 0px;
    border-style: none;
    border-image: none;
    outline: 0;
  }

  /* specific reset for elements inside QToolBar */
  QToolBar * {
    margin: 0px;
    padding: 0px;
  }

  /*hacks */
  Gui--PropertyEditor--PropertyEditor QLineEdit:read-only,
  Gui--PropertyEditor--PropertyEditor QLineEdit:disabled,
  Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:read-only,
  Gui--PropertyEditor--PropertyEditor QAbstractSpinBox:disabled {
      color: transparent;
      border-color: transparent;
      background-color: transparent;
      selection-color: transparent;
      selection-background-color: transparent;

  }
  Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel,
  Gui--PropertyEditor--PropertyEditor > QWidget > QWidget > QLabel:disabled {
      color: transparent;
      background-color: transparent;
      border: none;
      border-radius: 1px;
      margin: 0px;
      padding: 0px;
  }

  Gui--PropertyEditor--PropertyEditor QSpinBox,
  Gui--PropertyEditor--PropertyEditor QDoubleSpinBox,
  Gui--PropertyEditor--PropertyEditor QAbstractSpinBox,
  Gui--PropertyEditor--PropertyEditor QLineEdit,
  Gui--PropertyEditor--PropertyEditor QComboBox {
      margin-left: 0px;
      margin-right: 0px;
      padding-top: 0px;
      padding-bottom: 0px;

  }

  /*==================================================================================================
  Main window
  ==================================================================================================*/
  QMainWindow,
  QDialog,
  QDockWidget,
  QToolBar  {
      background-color: #7F7F7F; /* main background color */
  }

  QMdiArea {
    background-image: url(qss:images_dark-light/background_freecad_dark.svg);
    background-position: center center;
    background-repeat: no-repeat;
  }
  /*navgation src/Mod/Tux/NavigationIndicatorGui.py */
  Gui--NavigationIndicatorGui--BlenderNavigationStyle {
  /*QAction#a4 {*/
    qproperty-icon: url(:/icons/icons/NavigationBlender_light.svg);
  }
  /*=====
  /* QWidget ----------------------------------------------------------------

  --------------------------------------------------------------------------- */
  QWidget {
    background-color: #7F7F7F;
    border: 0px solid #696968;
    padding: 0px;
    color: White;
    selection-background-color: #4882ff;
    selection-color: White;
  }

  QWidget:disabled {
    background-color: transparent;
    color: #c2c7cb;
    selection-background-color: #4882ff;
    selection-color: #c2c7cb;
  }

  QWidget::item:selected {
    background-color: #4882ff;
  }

    /* Causes issue with colorselector.
    QWidget::item:hover:!selected {
      background-color: #4882ff;
    }*/

  /* QMainWindow ------------------------------------------------------------

  This adjusts the splitter in the dock widget, not qsplitter
  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmainwindow

  --------------------------------------------------------------------------- */
  QMainWindow::separator {
    /*background-color: #3c3c3c;*/
    border: 0px solid #696968;
    spacing: 0px;
    padding: 1px;
  }

  QMainWindow::separator:vertical:hover {
    background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0.2 transparent,stop:0.5 #4882ff, stop:0.8 transparent);
    /*background-color: #4882ff;*/
    image: url(qss:images_dark-light/splitter_vertical_light.svg);
  }

  QMainWindow::separator:horizontal:hover {
    background-color: qlineargradient(x1:0, y1:0, x2:1, y2:0,stop:0.2 transparent,stop:0.5 #4882ff, stop:0.8 transparent);
    /*background-color: #4882ff;*/
    image: url(qss:images_dark-light/splitter_horizontal_light.svg);
  }

  QMainWindow::separator:horizontal {
    width: 4px;
    margin-top: 0.1px;
    margin-bottom: 0.1px;
   /* image: url(qss:images_dark-light/splitter_horizontal_dark.svg);*/
  }

  QMainWindow::separator:vertical {
    height: 4px;
    margin-left: 0.1px;
    margin-right: 0.1px;
   /* image: url(qss:images_dark-light/splitter_vertical_dark.svg);*/
  }

  /* QToolTip ---------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtooltip

  --------------------------------------------------------------------------- */
  QToolTip {
    background-color: #505050;
    color: White;
    /* If you remove the border property, background stops working on Windows */
    border: none;
    /* Remove padding, for fix combo box tooltip */
    padding: 0px;
    /* Remove opacity, fix #174 - may need to use RGBA */
  }

  /* QStatusBar -------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qstatusbar

  --------------------------------------------------------------------------- */
  QStatusBar {
    border: 0px solid #3c3c3c;
    /* Fixes Spyder #9120, #9121 */
    background: #7F7F7F;
    /* Fixes #205, white vertical borders separating items */
  }

  QStatusBar::item {
    border: none;
  }

  QStatusBar QToolTip {
    background-color: #7F7F7F;
    border: 1px solid #696968;
    color: #7F7F7F;
    /* Remove padding, for fix combo box tooltip */
    padding: 0px;
    /* Reducing transparency to read better */
    opacity: 230;
  }

  QStatusBar QLabel {
    /* Fixes Spyder #9120, #9121 */
    background: transparent;
  }

  /* QCheckBox --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcheckbox

  --------------------------------------------------------------------------- */
  QCheckBox {
    color: white;
    padding: 0px;
    outline: none;
    border: 1px solid transparent;
    background-color: transparent;
  }

  QCheckBox:focus {
    border: 1px solid #3f7cff;
  }

  QCheckBox QWidget:disabled {
    background-color: transparent;
    color: #c2c7cb;
  }

  QCheckBox::indicator {
    color: white;
    background-color: #505050;
    width: 12px;
    height: 12px;
    image:url(qss:images_dark-light/checkbox_unchecked_light.svg);
  }

  QCheckBox::indicator:unchecked {
    background-color: #505050;
    image:url(qss:images_dark-light/checkbox_unchecked_light.svg);
  }

  QCheckBox::indicator:unchecked:hover, QCheckBox::indicator:unchecked:focus, QCheckBox::indicator:unchecked:pressed {
    background-color: #4882ff;
    image:url(qss:images_dark-light/checkbox_unchecked_light.svg);
  }

  QCheckBox::indicator:unchecked:disabled {
    background-color: #7F7F7F;
    image:url(qss:images_dark-light/checkbox_unchecked_disabled.svg);
  }

  QCheckBox::indicator:checked {
    background-color: #505050;
    /*border: 1px solid #696968; /* QRadioButton has the same color */
    image:url(qss:images_dark-light/checkbox_light.svg);
  }

  QCheckBox::indicator:checked:hover, QCheckBox::indicator:checked:pressed {
    background-color: #4882ff;
  }

  QCheckBox::indicator:checked:disabled {
    background-color: #7F7F7F;
    image: url(qss:images_dark-light/check_light.svg);
  }

  QCheckBox::indicator:indeterminate {
    background-color: #505050;
    border: 1px solid #696968;
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QCheckBox::indicator:indeterminate:disabled {
    background-color: #7F7F7F;
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QCheckBox::indicator:indeterminate:hover, QCheckBox::indicator:indeterminate:pressed {
    background-color: #4882ff; /* QRadioButton has the same color */
  }

  /* QGroupBox --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox

  --------------------------------------------------------------------------- */
  QGroupBox {
    font-weight: bold;
    border: 1px solid #696968;
    border-radius: 1.9px;
    padding: 2px;
    margin-top: 10px;
    margin-bottom: 4px;
  }

  QGroupBox::title {
    subcontrol-origin: margin;
    subcontrol-position: top left;
    left: 4px;
    padding-left: 2px;
    padding-right: 4px;
    padding-top: 6px;
  }

  QGroupBox::indicator {
    color: white;
    background-color: #3c3c3c;
    border: 1px solid #696968;
    width: 12px;
    height: 12px;
    border-radius:1px;
  }

  QGroupBox::indicator:unchecked {
    background-color: #696968;
    border: 1px solid #696968;
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QGroupBox::indicator:unchecked:hover, QGroupBox::indicator:unchecked:focus, QGroupBox::indicator:unchecked:pressed {
    background-color: #4882ff;
  }

  QGroupBox::indicator:unchecked:disabled {
    background-color: #505050;
    border: 1px solid #696968;
  }

  QGroupBox::indicator:checked {
    border: none;
    image:url(qss:images_dark-light/checkbox_light.svg);
  }

  QGroupBox::indicator:checked:hover, QGroupBox::indicator:checked:focus, QGroupBox::indicator:checked:pressed {
    background-color: #4882ff;
  }

  QGroupBox::indicator:checked:disabled {
    background-color: #4882ff;
  }

  /* QRadioButton -----------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qradiobutton

  --------------------------------------------------------------------------- */
  QRadioButton {
    background-color: transparent;
    color: White;
    border: none;
    spacing: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
    outline: none;
  }

  QRadioButton:focus {
    border: 1px solid #3f7cff;
  }

  QRadioButton:disabled {
    background-color: #696968;
    color: #353535;
  }

  QRadioButton QWidget {
    background-color: transparent;
    color: White;
    spacing: 0px;
    padding: 0px;
    outline: none;
    border: none;
  }

  QRadioButton::indicator {
    background-color: #3c3c3c;
    border: 1px solid #696968;
    border-radius: 6px;
    margin-left: 0px;
    height: 11px;
    width: 11px;
  }

  QRadioButton::indicator:unchecked {
    /*image:url(qss:images_dark-light/radiobutton_light.svg);*/
  }

  QRadioButton::indicator:unchecked:hover, QRadioButton::indicator:unchecked:pressed {
    background-color: #4882ff;
    border: 1px solid #4882ff;
    border-radius: 6px;
  }

  QRadioButton::indicator:unchecked:disabled {
    /*image:url(qss:images_dark-light/radiobutton_dark.svg);*/
    border: 1px solid #696968;
  }

  QRadioButton::indicator:checked {
    image:url(qss:images_dark-light/radiobutton_light.svg);
  }

  QRadioButton::indicator:checked:hover, QRadioButton::indicator:checked:pressed {
    background-color: #4882ff;
    border: 1px solid #4882ff;
    border-radius: 6px;
    image:url(qss:images_dark-light/radiobutton_light.svg);
  }

  QRadioButton::indicator:checked:disabled {
    outline: none;
    background-color: #696968;
    image:url(qss:images_dark-light/radiobutton_dark.svg);
  }

  /* QMenuBar ---------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenubar

  --------------------------------------------------------------------------- */
  QMenuBar {
    background-color: #505050;
    /*padding: 1px;
    border: 0px solid rgba(0,0,0,140);*/
    color: White;
    selection-background-color: #4882ff;
  }

  QMenuBar:focus {
    border: 1px solid #3f7cff;
  }

  QMenuBar::item {
    background: transparent;
     /*padding-left:5px;
    padding-right: 5px;
    padding-bottom: 1px;
    padding-top: 1px;*/
  }

  QMenuBar::item:selected {
    background: transparent;
    border: 0px solid #696968;
    background-color: #4882ff;
  }

  QMenuBar::item:pressed {
    /*padding: 2px;
    padding-left: 10px;
    padding-right: 10px;*/
    border: 0px solid #696968;
    background-color: #4882ff;
    color: White;
   /*margin-bottom: 0px;
    padding-bottom: 0px;*/
  }

  /* QMenu ------------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qmenu

  --------------------------------------------------------------------------- */
  QMenu {
    border-bottom: 2px rgba(0,0,0,140);
    border-right: 2px rgba(0,0,0,140);
    color: White;
    margin: 0px;
    background-color: #505050;
    selection-background-color: #4882ff;
  }

  QMenu::separator {
    height: 2px;
    background-color: #3c3c3c;
    margin-left: 30%;
    margin-right: 30%;
  }

  QMenu::item {
    background-color: transparent;
    padding: 2px 2px; /* make room for icon at left */
    /* Reserve space for selection border */
    border: 0px transparent #696968;
  }

  QMenu::item:selected {
    color: White;
    background-color: #4882ff;
  }

  QMenu::item:pressed {
    background-color: #4882ff;
  }

  QMenu::icon {
    margin-left: 5px;
    width: 14px;
    height: 14px;
  }

  QMenu::indicator {
    margin-left: 2px;
    margin-right: 2px;
    padding: 0px;
    width: 12px;
    height: 12px;
    /* non-exclusive indicator = check box style indicator (see QActionGroup::setExclusive) */
    /* exclusive indicator = radio button style indicator (see QActionGroup::setExclusive) */
  }

  QMenu::icon:checked { /* appearance of a 'checked' icon */
    background: #3f7cff;
    margin-left: -5px;
    border: 5px solid #3f7cff;
    position: absolute;
    border-radius: 0px;
  }
  QMenu::indicator:non-exclusive:unchecked {
    image: url(qss:images_dark-light/checkbox_unchecked_light.svg);
  }

  QMenu::indicator:non-exclusive:unchecked:hover, QMenu::indicator:non-exclusive:unchecked:focus, QMenu::indicator:non-exclusive:unchecked:pressed {
    border: none;
    background: #4882ff;
  }

  QMenu::indicator:non-exclusive:unchecked:disabled {
    image: url(qss:images_dark-light/checkbox_unchecked_disabled.svg);
  }

  QMenu::indicator:non-exclusive:checked {
    image:url(qss:images_dark-light/checkbox_light.svg);
  }

  QMenu::indicator:non-exclusive:checked:hover, QMenu::indicator:non-exclusive:checked:focus, QMenu::indicator:non-exclusive:checked:pressed {
    border: none;
    background: #4882ff;
  }

  QMenu::indicator:non-exclusive:checked:disabled {
  image:url(qss:images_dark-light/checkbox_checked_disabled.svg);
  }

  QMenu::indicator:non-exclusive:indeterminate {
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QMenu::indicator:non-exclusive:indeterminate:disabled {
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QMenu::indicator:non-exclusive:indeterminate:focus, QMenu::indicator:non-exclusive:indeterminate:hover, QMenu::indicator:non-exclusive:indeterminate:pressed {
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QMenu::indicator:exclusive:unchecked {
    image: url(qss:images_dark-light/transparent.svg);
  }

  QMenu::indicator:exclusive:unchecked:hover, QMenu::indicator:exclusive:unchecked:focus, QMenu::indicator:exclusive:unchecked:pressed {
    border: none;
    outline: none;
    background: #4882ff;
    image: url(qss:images_dark-light/checkbox_unchecked_light.svg);
  }

  QMenu::indicator:exclusive:unchecked:disabled {
    image: url(qss:images_dark-light/checkbox_unchecked_light.svg);
  }

  QMenu::indicator:exclusive:checked {
    border: none;
    outline: none;
    image: url(qss:images_dark-light/radiobutton_light.svg);
  }

  QMenu::indicator:exclusive:checked:hover, QMenu::indicator:exclusive:checked:focus, QMenu::indicator:exclusive:checked:pressed {
    border: none;
    outline: none;
    background: #4882ff;
    image: url(qss:images_dark-light/checkbox_unchecked_light.svg);
  }

  QMenu::indicator:exclusive:checked:disabled {
    outline: none;
    image: url(qss:images_dark-light/radiobutton_light.svg);
  }

  QMenu::right-arrow {
    margin: 5px;
    padding-left: 12px;
    image:url(qss:images_dark-light/right_arrow_lighter.svg);
    height: 12px;
    width: 12px;
    background-color: transparent;
  }

  /* QAbstractItemView ------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox

  --------------------------------------------------------------------------- */
  QAbstractItemView {
    alternate-background-color: #5b5b5b;
    color: White;
    border: 1px solid #696968;
    border-radius: 2px;
  }

  QAbstractItemView QLineEdit {
    padding: 2px;
  }

  /* QAbstractScrollArea ----------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea

  --------------------------------------------------------------------------- */
  QAbstractScrollArea {
    background-color: transparent;
    border: 0px solid #696968;
    border-radius: 0px;
    /* fix #159 */
    padding: 0px;
    /* remove min-height to fix #244 */
    color: White;
  }

  QAbstractScrollArea:disabled {
    color: #353535;
  }

  /* QScrollArea ------------------------------------------------------------

  ---------------------------------------------------------------------------
  text input field disabled!!!!*/
  QScrollArea QWidget:disabled {
    background-color: #7F7F7F;
  }

  /* QScrollBar -------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qscrollbar

  --------------------------------------------------------------------------- */
  QScrollBar:horizontal {
    height: 16px;
    margin: 2px 8px 2px 8px;
    border: 0px solid #696968;
    border-radius: 1.9px;
    background-color: #7F7F7F;
  }

  QScrollBar:vertical {
    background-color: #7F7F7F;
    width: 16px;
    margin: 8px 2px 8px 2px;
    border: 0px solid #696968;
    border-radius: 1.9px;
  }

  QScrollBar::handle:horizontal {
    background-color: #696969;
    border: 1px solid #7F7F7F;
    border-radius: 4px;
    min-width: 8px;
  }

  QScrollBar::handle:horizontal:hover {
    background-color: #4882ff;
    border: #696968;
    border-radius: 4px;
    min-width: 8px;
  }

  QScrollBar::handle:horizontal:focus {
    border: 1px solid #3f7cff;
  }

  QScrollBar::handle:vertical {
    background-color: #696969;
    border: 1px solid #696968;
    min-height: 8px;
    border-radius: 4px;
  }

  QScrollBar::handle:vertical:hover {
    background-color: #4882ff;
    border: #696968;
    border-radius: 4px;
    min-height: 8px;
  }

  QScrollBar::handle:vertical:focus {
    border: 1px solid #3f7cff;
  }

  QScrollBar::add-line:horizontal {
    border-image: url(qss:images_dark-light/right_arrow_light.svg);
    height: 9px;
    width: 5px;
    subcontrol-position: right;
    subcontrol-origin: margin;
  }

  QScrollBar::add-line:horizontal:hover, QScrollBar::add-line:horizontal:on {
    border-image: url(qss:images_dark-light/right_arrow_lighter.svg);
    height: 9px;
    width: 5px;
    subcontrol-position: right;
    subcontrol-origin: margin;
  }

  QScrollBar::add-line:vertical {
    border-image: url(qss:images_dark-light/down_arrow_light.svg);
    height: 5px;
    width: 9px;
    subcontrol-position: bottom;
    subcontrol-origin: margin;
  }

  QScrollBar::add-line:vertical:hover, QScrollBar::add-line:vertical:on {
    border-image: url(qss:images_dark-light/down_arrow_lighter.svg);
    height: 5px;
    width: 9px;
    subcontrol-position: bottom;
    subcontrol-origin: margin;
  }

  QScrollBar::sub-line:horizontal {
    margin: 0px 0px 0px 0px;
    border-image: url(qss:images_dark-light/left_arrow_light.svg);
    height: 9px;
    width: 5px;
    subcontrol-position: left;
    subcontrol-origin: margin;
  }

  QScrollBar::sub-line:horizontal:hover, QScrollBar::sub-line:horizontal:on {
    border-image: url(qss:images_dark-light/left_arrow_lighter.svg);
    height: 9px;
    width: 5px;
    subcontrol-position: left;
    subcontrol-origin: margin;
  }

  QScrollBar::sub-line:vertical {
    margin: 0px 0px 0px 0px;
    border-image: url(qss:images_dark-light/up_arrow_light.svg);
    height: 5px;
    width: 9px;
    subcontrol-position: top;
    subcontrol-origin: margin;
  }

  QScrollBar::sub-line:vertical:hover, QScrollBar::sub-line:vertical:on {
    background-color: #4882ff;
    border-image: url(qss:images_dark-light/up_arrow_lighter.svg);
    height: 5px;
    width: 9px;
    subcontrol-position: top;
    subcontrol-origin: margin;
  }

  QScrollBar::up-arrow:horizontal, QScrollBar::down-arrow:horizontal {
    background: none;
  }

  QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical {
    background: none;
  }

  QScrollBar::add-page:horizontal, QScrollBar::sub-page:horizontal {
    background: none;
  }

  QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
    background: none;
  }

  /* QTextEdit --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-specific-widgets


  report view
  --------------------------------------------------------------------------- */
  QTextEdit {
    background-color: #7F7F7F;
    color: White;
    border-radius: 1.9px;
    border: 0px solid #696968;
  }

  QTextEdit:focus {
    border: 1px solid #3f7cff;
  }

  QTextEdit:selected {
    background: #346792;
    color: white;
  }

  /* QPlainTextEdit ---------------------------------------------------------
  Python
  --------------------------------------------------------------------------- */
  QPlainTextEdit {
    background-color: #3c3c3c;
    color: White;
    border-radius: 1.9px;
    border: 0px solid #696968;
  }

  QPlainTextEdit:focus {
    border: 1px solid #3f7cff;
  }

  QPlainTextEdit:selected {
    background: #4882ff;
    color: White;
  }

  /* QSizeGrip --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsizegrip

  --------------------------------------------------------------------------- */
  QSizeGrip {
    background: transparent;
    width: 12px;
    height: 12px;
    image:url(qss:images_dark-light/sizegrip_light.svg);
  }

  /* QStackedWidget ---------------------------------------------------------

  --------------------------------------------------------------------------- */
  QStackedWidget {
    padding: 0px;
    border: 0px solid #696968;
  }

  /* QToolBar ---------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbar

  --------------------------------------------------------------------------- */
  QToolBar {
    background-color: #7F7F7F;
    border-bottom: 0px solid rgba(0,0,0,120);
    padding: 1px;
    font-weight: bold;
    spacing: 1px;
  }

  QToolBar:disabled {
    /* Fixes #272 */
    background-color: #7F7F7F;
  }

  QToolBar::handle:horizontal {
    width: 8px;
    margin: 3px 3px;
    background-position: top right;
    background-repeat: repeat-y;
    background-image: url(qss:images_dark-light/Hmovetoolbar_light.svg);
  }

  QToolBar::handle:vertical {
    height: 8px;
    margin: 3px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    background-image: url(qss:images_dark-light/Vmovetoolbar_light.svg);
  }

  QToolBar::separator:horizontal {
    width: 2px;
    margin: 4px 4px;
    background-color: transparent;
  }

  QToolBar::separator:vertical {
    height: 2px;
    margin: 4px 4px;
    background-color: transparent;
  }

  /*The "show more" button  (it can also be stylable with "QToolBarExtension"  icon is not working Qproperty works but breaks when you move the toolbar see also */
  QToolButton#qt_toolbar_ext_button {
  margin: 0px;
  padding: 0px;
  background-color: #696969;
  /*background-image: url(qss:images_dark-light/more_light.svg);*/
  background-repeat: none;
  background-position: center center;
  }

  QToolButton#qt_toolbar_ext_button:hover {
  /*background-image: url(qss:images_dark-light/more_light.svg);*/
  background-color: #4882ff;
  }

  QToolButton#qt_toolbar_ext_button:on {
  /*background-image: url(qss:images_dark-light/more_light.svg);*/
  border-color: #696968;
  background-color: #4882ff;
  }


  /* QAbstractSpinBox -------------------------------------------------------

  --------------------------------------------------------------------------- */
  QAbstractSpinBox,
  QSpinBox {
    background-color: #505050;
    border: 1px solid transparent;
    color: White;
    /* This fixes 103, 111 */
   /* padding-top: 0px;
    /* This fixes 103, 111 */
    /*padding-bottom: 0px;
    /*padding-left: 4px;
    /*padding-right: 4px;
    border-radius: 1.9px;*/
    min-height: 1.7em;
    /* min-width: 5px; removed to fix 109 */
  }

  QAbstractSpinBox:up-button {
    background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
    subcontrol-origin: border;
    subcontrol-position: top right;
    border: 1px solid transparent;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    /*margin: 1px;*/
    /*width: 12px;
    /*margin-bottom: -1px;*/
  }

  QAbstractSpinBox::up-arrow, QAbstractSpinBox::up-arrow:disabled, QAbstractSpinBox::up-arrow:off {
    image: url(qss:images_dark-light/up_arrow_disabled_light.svg);
   /* height: 8px;
    width: 8px;*/
  }

  QAbstractSpinBox::up-arrow:hover {
    image: url(qss:images_dark-light/up_arrow_lighter.svg);
  }

  QAbstractSpinBox:down-button {
    background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
    subcontrol-origin: border;
    subcontrol-position: bottom right;
    border: 1px solid transparent;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    /*margin: 1px;*/
    /*width: 12px;
    /*margin-top: -1px;*/
  }

  QAbstractSpinBox::down-arrow, QAbstractSpinBox::down-arrow:disabled, QAbstractSpinBox::down-arrow:off {
    image: url(qss:images_dark-light/down_arrow_disabled_light.svg);
    /*height: 8px;
    width: 8px;*/
  }

  QAbstractSpinBox::down-arrow:hover {
    image: url(qss:images_dark-light/down_arrow_lighter.svg);
  }

  QAbstractSpinBox:hover {
    /*border: 1px solid #4882ff;
    color: White;*/
  }

  QAbstractSpinBox:focus {
    border: 1px solid #3f7cff;
  }

  QAbstractSpinBox:selected {
    background: #3f7cff;
    /*color: White;*/
  }

  /* ------------------------------------------------------------------------ */
  /* DISPLAYS --------------------------------------------------------------- */
  /* ------------------------------------------------------------------------ */
  /* QLabel -----------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe

  --------------------------------------------------------------------------- */
  QLabel {
    background-color: transparent;
    border: 0px solid #696968;
    padding: 2px;
    margin: 0px;
    color: White;
  }

  QLabel:disabled {
    background-color: transparent;
    border: 0px solid #696968;
    color: #c2c7cb;
  }

  QLabel[haslink="true"] {
    color: orange;
  }


  /* QTextBrowser -----------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qabstractscrollarea

  --------------------------------------------------------------------------- */
  QTextBrowser {
    background-color: #505050;
    border: 1px solid #696968;
    color: White;
    border-radius: 1.9px;
  }

  QTextBrowser:disabled {
    background-color: #7F7F7F;
    border: 1px solid #696968;
    color: #c2c7cb;
    border-radius: 1.9px;
  }

  QTextBrowser:hover, QTextBrowser:!hover, QTextBrowser:selected, QTextBrowser:pressed {
    border: 1px solid #4882ff;
  }

  /* QGraphicsView ----------------------------------------------------------

  --------------------------------------------------------------------------- */
  QGraphicsView {
    background-color: transparent;
    border: 0px solid #4882ff;
    color: White;
    border-radius: 0px;
  }

  QGraphicsView:disabled {
    background-color: #505050;
    border: 0px solid #696968;
    color: #c2c7cb;
    border-radius: 0px;
  }

  QGraphicsView:hover, QGraphicsView:!hover, QGraphicsView:selected, QGraphicsView:pressed {
    border: 0px solid #ff00f7;
  }

  /* QCalendarWidget --------------------------------------------------------

  --------------------------------------------------------------------------- */
  QCalendarWidget {
    border: 1px solid #696968;
    border-radius: 1.9px;
  }

  QCalendarWidget:disabled {
    background-color: #353535;
    color: #c2c7cb;
  }

  /* QLCDNumber -------------------------------------------------------------

  --------------------------------------------------------------------------- */
  QLCDNumber {
    background-color: #1aff00;
    color: White;
  }

  QLCDNumber:disabled {
    background-color: #7F7F7F;
    color: #c2c7cb;
  }

  /* QProgressBar -----------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qprogressbar

  --------------------------------------------------------------------------- */
  QProgressBar {
    background-color: #c2c7cb;
    border: 1px solid #696968;
    color: White;
    border-radius: 1.9px;
    text-align: center;
  }

  QProgressBar:disabled {
    background-color: #505050;
    border: 1px solid #696968;
    color: #696969;
    border-radius: 1.9px;
    text-align: center;
  }

  QProgressBar::chunk {
    background-color: #4882ff;
    color: #7F7F7F;
    border-radius: 1.9px;
  }

  QProgressBar::chunk:disabled {
    background-color: #505050;
    color: #696968;
    border-radius: 1.9px;
  }

  /* ------------------------------------------------------------------------ */
  /* BUTTONS ---------------------------------------------------------------- */
  /* ------------------------------------------------------------------------ */
  /* QPushButton ------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qpushbutton

  --------------------------------------------------------------------------- */
  QPushButton {
    background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
    color: White;
    border: 1px solid #505051;
    border-bottom-color: #1e1e1e; /* simulates shadow under the button */
    border-radius: 4px;
    padding: 2px;
  }

  QPushButton:disabled {
    background-color: #7F7F7F;
    color: #c2c7cb;

  }

  QPushButton:checked {
    background-color: #4882ff;
    outline: none;
  }

  QPushButton:checked:disabled {
    background-color: #4882ff;
    color: #3c3c3c;
    outline: none;
  }

  QPushButton:checked:selected {
    background: #4882ff;
  }

  QPushButton:hover {
    background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff);
    color: White;
  }

  QPushButton:pressed {
    background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #3f7cff, stop:1 #4882ff);
}

  QPushButton:selected {
    background: #3f7cff;
    color: White;
  }

  QPushButton::menu-indicator {
    subcontrol-origin: padding;
    subcontrol-position: bottom right;
    bottom: 4px;
  }

  QDialogButtonBox QPushButton {
    /* Issue # 194 # 248 - Special case of QPushButton inside dialogs, for better UI */
    min-width: 80px;
  }

  /* QToolButton ------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbutton

  --------------------------------------------------------------------------- */
  QToolButton {
    background-color: transparent;
    color: White;
    border-radius: 1px;
    padding: 0px;
    outline: none;
    border: none;
    /* The subcontrols below are used only in the DelayedPopup mode */
    /* The subcontrols below are used only in the MenuButtonPopup mode */
    /* The subcontrol below is used only in the InstantPopup or DelayedPopup mode */
  }

  QToolButton:disabled {
    background-color: rgba(0, 0, 0, 0.065);
    color: #c2c7cb;
    border-radius: 1px;
    padding: 0px;
  }

  QToolButton:checked {
    background-color: #4882ff;
    border-radius: 1.9px;
    padding: 0px;
    outline: none;
  }

  QToolButton:checked:disabled {
    background-color: #b65555;
    color: #c2c7cb;
    border-radius: 1.9px;
    padding: 0px;
    outline: none;
  }

  QToolButton:checked:hover {
    background-color: #4882ff;
    color: White;
  }

  QToolButton:checked:pressed {
    background-color: #4882ff;
  }

  QToolButton:checked:selected {
    background: #3f7cff;
    color: White;
  }

  QToolButton:hover {
    background-color: #4882ff;
    color: White;
  }

  QToolButton:pressed {
    background-color: #3f7cff;
  }

  QToolButton:selected {
    background: #4882ff;
    color: White;
  }

  QToolButton[popupMode="0"] {
    /* Only for DelayedPopup */
    padding-right: 20px;
  }

  QToolButton[popupMode="1"] {
    /* Only for MenuButtonPopup */
    padding-right: 20px;
  }
  QToolButton[popupMode="0"]::menu-button {
    border: none;
  }

  QToolButton[popupMode="0"]::menu-button:hover {
    border: none;
    border-left: 2px solid #fe0000;
    border-radius: 0px;
  }
  QToolButton[popupMode="1"]::menu-button {
    border: none;
  }

  QToolButton[popupMode="1"]::menu-button:hover {
    border: none;
    border-left: 2px solid #e5ff00;
    border-radius: 0px;
  }

  QToolButton[popupMode="2"] {
    /* Only for InstantPopup */
    padding-right: 20px;
  }

  QToolButton::menu-button {
    border-bottom: 0px solid #ffffff;
    border-radius: 2px;
    /* 16px width + 4px for border = 20px allocated above */
    width: 1.6ex;
    padding: 2px;
    border-radius: 2px;
    border: 0px #000000;
  }

  QToolButton::menu-button:hover {
   /* background: rgba(0, 0, 0, 0.5);*/

  }

  QToolButton::menu-button:checked:hover {
   /* background: rgba(0, 0, 0, 0.5);*/
  }

  QToolButton::menu-indicator {
    /* Exclude a shift for better image */
    subcontrol-position: right bottom;
    /* Shift it a bit */
  }

  QToolButton::menu-arrow {
    image: url(qss:images_dark-light/more_arrow_light.svg);
    width: 1.5ex;
    height: 1.5ex;
    subcontrol-position: right bottom;
    background: transparent;
  }
  QToolButton::menu-arrow:open {
    subcontrol-position: right bottom;
    image: url(qss:images_dark-light/more_arrow_light.svg);
  }
  QToolButton::menu-arrow:hover {
    image: url(qss:images_dark-light/more_arrow_light.svg);
    background-color: rgba(0, 0, 0, 0.498);
    border: 1px solid rgba(0, 0, 0, 0.498);
  }

  /* QCommandLinkButton -----------------------------------------------------

  --------------------------------------------------------------------------- */
  QCommandLinkButton {
    background-color: transparent;
    border: 1px solid #696968;
    color: White;
    border-radius: 1.9px;
    padding: 0px;
    margin: 0px;
  }

  QCommandLinkButton:disabled {
    background-color: transparent;
    color: #c2c7cb;
  }

  /* ------------------------------------------------------------------------ */
  /* INPUTS - NO FIELDS ----------------------------------------------------- */
  /* ------------------------------------------------------------------------ */
  /* QComboBox --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox

  --------------------------------------------------------------------------- */
  QComboBox {
    border: 1px solid transparent;
    background: #505050;
    border-radius: 2px;
    selection-background-color: #4882ff;
    padding-left: 2px;
    padding-right: 2px;
    /* padding-right = 36; 4 + 16*2 See scrollbar size */
    /* changed to 4px to fix #239 */
    /* Fixes #103, #111 */
    min-height: 1.5em;
    /* padding-top: 2px;     removed to fix #132 */
    /* padding-bottom: 2px;  removed to fix #132 */
    /* min-width: 75px;      removed to fix #109 */
    /* Needed to remove indicator - fix #132 */
  }
  QComboBox:editable {
    background: #505050;
  }
  QComboBox QAbstractItemView {
    border: 0px solid #696968;
    border-radius: 0px;
    background-color: #505050;
    selection-background-color: #4882ff;
  }

  QComboBox QAbstractItemView:hover {
    background-color:#505050;
    color: White;
  }

  QComboBox QAbstractItemView:selected {
    background: #4882ff;
    color: White;
  }

  QComboBox QAbstractItemView:alternate {
    background: #3c3c3c;
  }

  QComboBox:disabled {
    background-color: #7F7F7F;
    color: #353535;
  }

  QComboBox:hover {
    /*background-color: #4882ff;*/
    border: 1px solid #4882ff;
  }

  QComboBox:focus {
    border: 1px solid #3f7cff;
  }

  QComboBox:on {
    selection-background-color: #3f7cff;
  }

  QComboBox::indicator {
    border: none;
    border-radius: 0px;
    background-color: transparent;
    selection-background-color: transparent;
    color: transparent;
    selection-color: #4882ff;
    /* Needed to remove indicator - fix #132 */
  }

  QComboBox::indicator:alternate {
    background: #696968;
  }

  QComboBox::item {
    /* Remove to fix #282, #285 and MR #288*/
    /*&:checked {
              font-weight: bold;
          }

          &:selected {
              border: 0px solid transparent;
          }
          */
  }

  QComboBox::item:alternate {
    background: #3c3c3c;
  }

  QComboBox::drop-down {
    subcontrol-origin: padding;
    background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
    subcontrol-position: top right;
    width: 14px;
    border-left: 1px solid transparent;
  }
  QComboBox::drop-down:hover {
    background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff);
  }

  QComboBox::down-arrow {
    image: url(qss:images_dark-light/down_arrow_disabled_light.svg);
    height: 10px;
    width: 10px;
  }

  QComboBox::down-arrow:on, QComboBox::down-arrow:hover, QComboBox::down-arrow:focus {
    image: url(qss:images_dark-light/down_arrow_lighter.svg);
  }


  /*==================================================================================================
  Tasks panel (custom FreeCAD class)
  ==================================================================================================*/
  Gui--PropertyEditor--PropertyEditor {
    qproperty-groupTextColor: white;
    qproperty-groupBackground: #3c3c3c;
    border: 0px solid #696968;

  }

  /* Action group */
  QFrame[class="panel"] {
  background-color: transparent; /* temporal (transparent background) */

  }

  QSint--ActionGroup {
  padding: 0px; /* if not reset, it might create problems with QPushButtons and other elements */
  margin: 0px; /* if not reset, it might create problems with QPushButtons and other elements */
  }

  /* Separator line */
  QSint--ActionGroup QFrame[height="1"],
  QSint--ActionGroup QFrame[height="2"],
  QSint--ActionGroup QFrame[height="3"],
  QSint--ActionGroup QFrame[width="1"],
  QSint--ActionGroup QFrame[width="2"],
  QSint--ActionGroup QFrame[width="3"] {
  border-color: rgba(0,0,0,60);
  }

  /* Panel header */
  QSint--ActionGroup QFrame[class="header"] {
  border-top: 1px solid #696968;
  border-left: 1px solid #696968;
  border-right: 1px solid #696968;
  background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
  margin: 0px;
  padding: 0px;
  }

  QSint--ActionGroup QFrame[class="header"]:hover {
  background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff);
  }

  QSint--ActionGroup QToolButton[class="header"] {
  color: white; /* Task Panel Header text color */
  text-align: left;
  font-weight: bold;
  border: none;
  margin: 0px;
  padding: 0px;
  }

  QSint--ActionGroup QFrame[class="header"] QLabel {
  background-color: transparent;
  background-image: url(qss:images_dark-light/down_arrow_light.svg);
  background-repeat: none;
  background-position: center center;
  padding: 0px;
  margin: 0px;
  }

  QSint--ActionGroup QFrame[class="header"] QLabel:hover {
  background-color: transparent;
  background-image: url(qss:images_dark-light/down_arrow_lighter.svg);
  }

  QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"] {
  background-color: transparent;
  background-image: url(qss:images_dark-light/up_arrow_light.svg);
  background-repeat: none;
  background-position: center center;
  padding: 0px;
  margin: 0px;
  }

  QSint--ActionGroup QFrame[class="header"] QLabel[fold="true"]:hover {
  background-color: transparent;
  background-image: url(qss:images_dark-light/up_arrow_lighter.svg);
  }

  QSint--ActionGroup QFrame[class="content"] {
  background-color: transparent; /* Task Panel background color */
  margin: 0px;
  padding: 0px;
  border-bottom: 1px solid #696968;
  border-left: 1px solid #696968;
  border-right: 1px solid #696968;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  }

  QSint--ActionGroup QFrame[class="content"] > QWidget {
  background-color: #7F7F7F; /* Task Panel background color */
  }

  /* Fixs for tabs inside Task Panel */
  QSint--ActionGroup QFrame[class="content"] QTabBar::tab:top:selected {
  border-bottom-color: #4882ff; /* same as Task Panel background color */
  }

  QSint--ActionGroup QFrame[class="content"] QTabBar::tab:bottom:selected {
  border-top-color: #4882ff; /* same as Task Panel background color */
  }

  QSint--ActionGroup QFrame[class="content"] QTabBar::tab:right:selected {
  border-right-color: #4882ff; /* same as Task Panel background color */
  }

  QSint--ActionGroup QFrame[class="content"] QTabBar::tab:left:selected {
  border-left-color: #4882ff; /* same as Task Panel background color */
  }

  /* Fix for buttons with icons that showed cropped (still not happy with result) */
  QSint--ActionGroup QFrame[class="content"] > QWidget > QPushButton {
  padding: 2px; /* bigger padding crops text and icons... */
  margin: 0px;
  }

  /* Fix for lists inside task panels */ /* sketcher constraints list */
  QSint--ActionGroup QFrame[class="content"] QTreeView,
  QSint--ActionGroup QFrame[class="content"] QListView,
  QSint--ActionGroup QFrame[class="content"] QTableView {
  color: white;
  background-color: #505050;
  }


  /* found inside Part Design Workbench and "make a draft on a face" Task panel options */
  QSint--ActionGroup QFrame[class="content"] QToolButton {
    color: white;
    text-align: center;
    background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
    border: 0px solid #adadad;
    padding: 1px 1px; /* different than regular QPushButton */
    margin: 0px; /* different than regular QPushButton */
    min-height: 16px; /* same as QTabBar QPushButton min-width */
    border-radius: 1px;
  }

  QSint--ActionGroup QFrame[class="content"] QToolButton:hover{
    background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff);

  }
  QSint--ActionGroup QFrame[class="content"] QToolButton:focus {
    border: 1px solid #3f7cff;
  }

  QSint--ActionGroup QFrame[class="content"] QToolButton:disabled,
  QSint--ActionGroup QFrame[class="content"] QToolButton:disabled:checked {
      color: #696969;
      background-color: #505050;
  }

  QSint--ActionGroup QFrame[class="content"] QToolButton:pressed {
    background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #4882ff, stop:1 #3f7cff);

  }

  /* QSlider ----------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qslider

  --------------------------------------------------------------------------- */
  QSlider:disabled {
    background: #7F7F7F;
  }

  QSlider:focus {
    border: 1px solid #3f7cff;
  }

  QSlider::groove:horizontal {
    background: #7F7F7F;
    border: 1px solid #696968;
    height: 4px;
    margin: 0px;
    border-radius: 1.9px;
  }

  QSlider::groove:vertical {
    background: #4882ff;
    border: 1px solid #696968;
    width: 4px;
    margin: 0px;
    border-radius: 1.9px;
  }

  QSlider::add-page:vertical {
    background: #4882ff;
    border: 1px solid #696968;
    width: 4px;
    margin: 0px;
    border-radius: 1.9px;
  }

  QSlider::add-page:vertical :disabled {
    background: #696968;
  }

  QSlider::sub-page:horizontal {
    background: #4882ff;
    border: 1px solid #0073ff;
    height: 4px;
    margin: 0px;
    border-radius: 1.9px;
  }

  QSlider::sub-page:horizontal:disabled {
    background: #4882ff;
  }

  QSlider::handle:horizontal {
    background: #353535;
    border: 1px solid #7F7F7F;
    width: 8px;
    height: 8px;
    margin: -8px 0px;
    border-radius: 1.9px;
  }

  QSlider::handle:horizontal:hover {
    background: #4882ff;
    border: 1px solid #4882ff;
  }

  QSlider::handle:horizontal:focus {
    border: 1px solid #3f7cff;
  }

  QSlider::handle:vertical {
    background: #c2c7cb;
    border: 1px solid #696968;
    width: 8px;
    height: 8px;
    margin: 0 -8px;
    border-radius: 1.9px;
  }

  QSlider::handle:vertical:hover {
    background: #4882ff;
    border: 2px solid #4882ff;
  }

  QSlider::handle:vertical:focus {
    border: 1px solid #3f7cff;
  }

  /* QLineEdit --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlineedit

  --------------------------------------------------------------------------- */
  QLineEdit {
    background-color: #505050;
    padding-top: 2px;
    /* This QLineEdit fix  103, 111 */
    padding-bottom: 2px;
    /* This QLineEdit fix  103, 111 */
    padding-left: 4px;
    padding-right: 4px;
    border-style: solid;
    border: 1px solid #696968;
    border-radius: 2px;
    color: White;
  }

  QLineEdit:disabled {
    background-color: #7F7F7F;
    color: #c2c7cb;
  }

  QLineEdit:hover {
    border: 1px solid #4882ff;
    color: White;
  }

  QLineEdit:focus {
    border: 2px solid #3f7cff;
  }

  QLineEdit:selected {
    background-color: #4882ff;
    color: white;
  }

  /* QTabWiget --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar

  --------------------------------------------------------------------------- */
  QTabWidget {
    padding: 2px;
    selection-background-color: #4882ff;
  }

  QTabWidget QWidget {
    /* Fixes #189 */
    border-radius: 1.9px;
  }

  QTabWidget::pane {
    margin: 0px;
    /* Fixes double border inside pane with pyqt5 */
    padding: 0px;
  }

  QTabWidget::pane:selected {
    background-color: #4882ff;
    border: 1px solid #346792;
  }
  /* QTabBar ----------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar

  --------------------------------------------------------------------------- */
  QTabBar, QDockWidget QTabBar {
    qproperty-drawBase: 0;
    /* left: 5px; move to the right by 5px - removed for fix */
  }

  QTabBar::close-button, QDockWidget QTabBar::close-button {
    border: 0;
    margin: 0;
    padding: 1px;
    image: url(qss:images_dark-light/close_light.svg);
  }

  QTabBar::close-button:hover, QDockWidget QTabBar::close-button:hover {
    image: url(qss:images_dark-light/close_red.svg);
    /*background-color: rgba(255, 0, 0, 0.3);*/
  }

  QTabBar::close-button:pressed, QDockWidget QTabBar::close-button:pressed {
    image: url(qss:images_dark-light/close_.svg);
  }

  QTabBar::tab, QDockWidget QTabBar::tab {
    /* !selected and disabled ----------------------------------------- */
    /* selected ------------------------------------------------------- */
    padding: 4px;
  }

  QTabBar::tab:top:selected:disabled, QDockWidget QTabBar::tab:top:selected:disabled {
    color: #f5f5f5;
  }

  QTabBar::tab:bottom:selected:disabled, QDockWidget QTabBar::tab:bottom:selected:disabled {
    color: #f5f5f5;
  }

  QTabBar::tab:left:selected:disabled, QDockWidget QTabBar::tab:left:selected:disabled {
    color: #f5f5f5;
  }

  QTabBar::tab:right:selected:disabled, QDockWidget QTabBar::tab:right:selected:disabled {
    color: #f5f5f5;
  }

  QTabBar::tab:top:!selected:disabled, QDockWidget QTabBar::tab:top:!selected:disabled {
    color: #f5f5f5;
  }

  QTabBar::tab:bottom:!selected:disabled, QDockWidget QTabBar::tab:bottom:!selected:disabled {
    color: #f5f5f5;

  }

  QTabBar::tab:left:!selected:disabled, QDockWidget QTabBar::tab:left:!selected:disabled {
    color: #f5f5f5;

  }

  QTabBar::tab:right:!selected:disabled, QDockWidget QTabBar::tab:right:!selected:disabled {
    color: #f5f5f5;
  }

  QTabBar::tab:top:!selected, QDockWidget QTabBar::tab:top:!selected {
    color: #f5f5f5;
  }

  QTabBar::tab:bottom:!selected, QDockWidget QTabBar::tab:bottom:!selected {
    color: #f5f5f5;
  }

  QTabBar::tab:left:!selected, QDockWidget QTabBar::tab:left:!selected {
    color: #f5f5f5;
  }

  QTabBar::tab:right:!selected, QDockWidget QTabBar::tab:right:!selected {
    color: #f5f5f5;
  }

  QTabBar::tab:top, QDockWidget QTabBar::tab:top {
    color: #f5f5f5;
    margin-left: 0px;
    padding-left: 4px;
    padding-right: 4px;
    padding-top: 2px;
    padding-bottom: 2px;
    min-width: 5px;
    border-bottom: 1px solid #696969; /* same as tab content background color */
    border-radius: 0px;
  }

  QTabBar::tab:top:selected, QDockWidget QTabBar::tab:top:selected {
    color: white;
    border-top: 4px solid #4882ff; /* selection color */
    border-bottom: 1px solid transparent; /* same as tab content background color */
    border-left: 1px solid #696969;
    border-right: 1px solid #696969;
    }

  QTabBar::tab:top:!selected:hover, QDockWidget QTabBar::tab:top:!selected:hover {
     /*border: 1px solid #4882ff;*/
    border: 0px solid #4882ff;
    background-color: #4882ff;
    /* Fixes spyder-ide/spyder#9766 and #243 */
    padding-left: 3px;
    padding-right: 3px;
  }

  QTabBar::tab:bottom, QDockWidget QTabBar::tab:bottom {
    color: #f5f5f5;
    margin-left: 0px;
    padding-left: 4px;
    padding-right: 4px;
    padding-top: 2px;
    padding-bottom: 2px;
    min-width: 5px;
    border-top: 1px solid #696969; /* same as tab content background color */
    border-radius: 0px;
  }

  QTabBar::tab:bottom:selected, QDockWidget QTabBar::tab:bottom:selected {
    color: white;
    border-bottom: 4px solid #4882ff; /* selection color */
    border-top: 1px solid transparent; /* same as tab content background color */
    border-left: 1px solid #696969;
    border-right: 1px solid #696969;

  }

  QTabBar::tab:bottom:!selected:hover, QDockWidget QTabBar::tab:bottom:!selected:hover {
  /*border: 1px solid #4882ff;*/
    border: 0px solid #4882ff;
    background-color: #4882ff;
    /* Fixes spyder-ide/spyder#9766 and #243 */
    padding-left: 3px;
    padding-right: 3px;
  }

  QTabBar::tab:left, QDockWidget QTabBar::tab:left {
    background-color: #7F7F7F;
    margin-top: 2px;
    padding-left: 2px;
    padding-right: 2px;
    padding-top: 4px;
    padding-bottom: 4px;
    border-radius: 4px;
    min-height: 5px;
  }

  QTabBar::tab:left:selected, QDockWidget QTabBar::tab:left:selected {
    background-color: #7F7F7F;
    border: 0px solid #3f7cff;
  }

  QTabBar::tab:left:!selected:hover, QDockWidget QTabBar::tab:left:!selected:hover {
    border: 0px solid #4882ff;
    background-color: #4882ff;
    /* Fixes different behavior #271 */
    margin-right: 0px;
    padding-right: -1px;
  }

  QTabBar::tab:right, QDockWidget QTabBar::tab:right {
    background-color: #7F7F7F;
    margin-top: 2px;
    padding-left: 2px;
    padding-right: 2px;
    padding-top: 4px;
    padding-bottom: 4px;
    min-height: 5px;
    border: 10px;
  }

  QTabBar::tab:right:selected, QDockWidget QTabBar::tab:right:selected {
    background-color: #7F7F7F;
    border: 0px solid #3f7cff;
  }

  QTabBar::tab:right:!selected:hover, QDockWidget QTabBar::tab:right:!selected:hover {
    border: 0px solid #4882ff;
    background-color: #4882ff;
    /* Fixes different behavior #271 */
    margin-left: 0px;
    padding-left: 0px;
  }

  QTabBar QToolButton, QDockWidget QTabBar QToolButton {
    /* Fixes #136 */
    background-color: #7F7F7F;
    height: 12px;
    width: 12px;
  }

  QTabBar QToolButton:pressed, QDockWidget QTabBar QToolButton:pressed {
    border: 0px solid #4882ff;
    background-color: #4882ff;
  }

  QTabBar QToolButton:pressed:hover, QDockWidget QTabBar QToolButton:pressed:hover {
    border: 0px solid #4882ff;
    background-color: #4882ff;
  }

  QTabBar QToolButton::left-arrow:enabled, QDockWidget QTabBar QToolButton::left-arrow:enabled {
    image: url(qss:images_dark-light/left_arrow_lighter.svg);
  }

  QTabBar QToolButton::left-arrow:disabled, QDockWidget QTabBar QToolButton::left-arrow:disabled {
    image: url(qss:images_dark-light/left_arrow_disabled_light.svg);
  }

  QTabBar QToolButton::right-arrow:enabled, QDockWidget QTabBar QToolButton::right-arrow:enabled {
    image: url(qss:images_dark-light/right_arrow_lighter.svg);
  }

  QTabBar QToolButton::right-arrow:disabled, QDockWidget QTabBar QToolButton::right-arrow:disabled {
    image: url(qss:images_dark-light/right_arrow_disabled_light.svg);
  }

  /* QDockWiget -------------------------------------------------------------

  --------------------------------------------------------------------------- */
  QDockWidget {
    background-color: #7F7F7F;
    border: 1px solid #505051;
    border-radius: 1.9px;
    titlebar-close-icon: url(qss:images_dark-light/transparent.svg);
    titlebar-normal-icon: url(qss:images_dark-light/transparent.svg);
  }

  QDockWidget::title {
    /* Better size for title bar */
    padding: 3px;
    spacing: 4px;
    border: none;
    background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
    text-align: center;
    font-weight: bold;
  }

  QDockWidget::close-button {
    icon-size: 10px;
    border: none;
    background: transparent;
    background-image: transparent;
    border: 0;
    margin: 0;
    padding: 0;
    image: url(qss:images_dark-light/close_light.svg);
  }

  QDockWidget::close-button:hover {
    image: url(qss:images_dark-light/close_red.svg);
  }

  QDockWidget::close-button:pressed {
    image: url(qss:images_dark-light/close_light.svg);
  }

  QDockWidget::float-button {
    icon-size: 12px;
    border: none;
    background: transparent;
    background-image: transparent;
    border: 0;
    margin: 0;
    padding: 0;
    image: url(qss:images_dark-light/undock_light.svg);
  }

  QDockWidget::float-button:hover {
    /*background-color: #4882ff;*/
    image: url(qss:images_dark-light/undock_blue.svg);
  }

  QDockWidget::float-button:pressed {
    image: url(qss:images_dark-light/undock_light.svg);
  }

  /* QTreeView QListView QTableView -----------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtreeview
  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qlistview
  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtableview

  --------------------------------------------------------------------------- */
  QTreeView::branch  {
    background: transparent;
  }

  QTreeView::branch:has-siblings:!adjoins-item  {
    border-image: url(qss:images_dark-light/branch_vline_light.svg) 0;
  }

  QTreeView::branch:has-siblings:adjoins-item  {
    border-image: url(qss:images_dark-light/branch_more_light.svg) 0;
  }

  QTreeView::branch:!has-children:!has-siblings:adjoins-item  {
    border-image: url(qss:images_dark-light/branch_end_light.svg) 0;
  }

  QTreeView::branch:closed:has-children:has-siblings  {
    border-image: url(qss:images_dark-light/branch_more_closed_light.svg) 0;
  }

  QTreeView::branch:has-children:!has-siblings:closed  {
    border-image: url(qss:images_dark-light/branch_end_closed_light.svg) 0;
  }

  QTreeView::branch:open:has-children:has-siblings  {
    border-image: url(qss:images_dark-light/branch_more_open_light.svg) 0;
  }

  QTreeView::branch:open:has-children:!has-siblings  {
    border-image: url(qss:images_dark-light/branch_end_open_light.svg) 0;
  }

  QTreeView::indicator:checked,
  QListView::indicator:checked,
  QTableView::indicator:checked,
  QColumnView::indicator:checked {
    image: url(qss:images_dark-light/checkbox_light.svg);
  }

  QTreeView::indicator:checked:hover, QTreeView::indicator:checked:focus, QTreeView::indicator:checked:pressed,
  QListView::indicator:checked:hover,
  QListView::indicator:checked:focus,
  QListView::indicator:checked:pressed,
  QTableView::indicator:checked:hover,
  QTableView::indicator:checked:focus,
  QTableView::indicator:checked:pressed,
  QColumnView::indicator:checked:hover,
  QColumnView::indicator:checked:focus,
  QColumnView::indicator:checked:pressed {
    image: url(qss:images_dark-light/checkbox_light_hover.svg);
  }

  QTreeView::indicator:unchecked,
  QListView::indicator:unchecked,
  QTableView::indicator:unchecked,
  QColumnView::indicator:unchecked {
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QTreeView::indicator:unchecked:hover, QTreeView::indicator:unchecked:focus, QTreeView::indicator:unchecked:pressed,
  QListView::indicator:unchecked:hover,
  QListView::indicator:unchecked:focus,
  QListView::indicator:unchecked:pressed,
  QTableView::indicator:unchecked:hover,
  QTableView::indicator:unchecked:focus,
  QTableView::indicator:unchecked:pressed,
  QColumnView::indicator:unchecked:hover,
  QColumnView::indicator:unchecked:focus,
  QColumnView::indicator:unchecked:pressed {
    image: url(qss:images_dark-light/checkbox_unchecked_hover_light.svg);
  }

  QTreeView::indicator:indeterminate,
  QListView::indicator:indeterminate,
  QTableView::indicator:indeterminate,
  QColumnView::indicator:indeterminate {
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QTreeView::indicator:indeterminate:hover, QTreeView::indicator:indeterminate:focus, QTreeView::indicator:indeterminate:pressed,
  QListView::indicator:indeterminate:hover,
  QListView::indicator:indeterminate:focus,
  QListView::indicator:indeterminate:pressed,
  QTableView::indicator:indeterminate:hover,
  QTableView::indicator:indeterminate:focus,
  QTableView::indicator:indeterminate:pressed,
  QColumnView::indicator:indeterminate:hover,
  QColumnView::indicator:indeterminate:focus,
  QColumnView::indicator:indeterminate:pressed {
    image: url(qss:images_dark-light/checkbox_indeterminate_light.svg);
  }

  QTreeView,
  QListView,
  QTableView,
  QColumnView {
    background-color: #7F7F7F;  /* background of a lot of stuff including spreadsheets.*/
    border: 0px solid #696968;
    color: White;
    gridline-color: #696968;
    border-radius: 0px;
  }

QTableView,
QListView  {
  background-color: rgba(0, 0, 0, 0.232);  /* background of a lot of stuff including spreadsheets.*/
}


  QTreeView:disabled,
  QListView:disabled,
  QTableView:disabled,
  QColumnView:disabled {
    background-color: #505050;
    color: #c2c7cb;
  }

  QTreeView:selected,
  QListView:selected,
  QTableView:selected,
  QColumnView:selected {
    background-color: #4882ff;
    color: White;
  }

  QTreeView:focus,
  QListView:focus,
  QTableView:focus,
  QColumnView:focus {
    border: 1px solid #3f7cff;
  }

  QTreeView::item:pressed,
  QListView::item:pressed,
  QTableView::item:pressed,
  QColumnView::item:pressed {
    background-color: #4882ff;
  }

  QTreeView::item:selected:active,
  QListView::item:selected:active,
  QTableView::item:selected:active,
  QColumnView::item:selected:active {
    background-color: #4882ff;
  }

  QTreeView::item:selected:!active,
  QListView::item:selected:!active,
  QTableView::item:selected:!active,
  QColumnView::item:selected:!active {
    color: White;
    background-color: #353535;
  }

  QTreeView::item:!selected:hover,
  QListView::item:!selected:hover,
  QTableView::item:!selected:hover,
  QColumnView::item:!selected:hover {
    outline: 0;
    color: White;
    background-color: #4882ff;
  }

  QTableCornerButton::section {
    background-color: #7F7F7F;
    border: 1px transparent #696968;
    border-radius: 0px;
  }

  QTableView::item {
      color: white;
  }
  QTableView {
    /*qproperty-AliasedCellBackgroundColor: #f700ff;*/
    /*qproperty-aliasBgColor: #f700ff;*/
  }

  /* QHeaderView ------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qheaderview

  --------------------------------------------------------------------------- */
  QHeaderView {
    background-color: transparent;
    text-align: center;
  }

  QHeaderView:disabled {
    background-color: #7f7f7f;
    color: rgb(174, 174, 174);
  }

  QHeaderView::section {
    background-color: qlineargradient(x1:0, y1:0.3, x2:0, y2:1, stop:0 #676767, stop:1 #505051);
    color: White;
    border: 1px solid #505051;
    font-size: 13px;
    font-weight: bold;
  }

  QHeaderView::section::horizontal {
    padding-top: 1px;
    padding-bottom: 1px;
    padding-left: 5px;
    padding-right: 0px;
  }

  QHeaderView::section::horizontal::first, QHeaderView::section::horizontal::only-one {
    border-left: 0px solid #696968;
  }

  QHeaderView::section::horizontal:disabled {
    color: #353535;
  }

  QHeaderView::section::vertical {
    padding-top: 1px;
    padding-bottom: 0;
    padding-left: 1px;
    padding-right: 0px;
    border-top: 0px solid #696968;
  }

  QHeaderView::section::vertical::first, QHeaderView::section::vertical::only-one {
    border-top: 2px solid #505051;
  }

  QHeaderView::section::vertical:disabled {
    border-top: 2px solid #505051;
  }

  QHeaderView::down-arrow {
    /* Those settings (border/width/height/background-color) solve bug */
    /* transparent arrow background and size */
    background-color: transparent;
    border: none;
    height: 12px;
    width: 12px;
    padding-left: 2px;
    padding-right: 2px;
    image: url(qss:images_dark-light/down_arrow_light.svg);
  }

  QHeaderView::up-arrow {
    background-color: transparent;
    border: none;
    height: 12px;
    width: 12px;
    padding-left: 2px;
    padding-right: 2px;
    image: url(qss:images_dark-light/up_arrow_light.svg);
  }

  /* QToolBox --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtoolbox
  used in PATH

  --------------------------------------------------------------------------- */
  QToolBox {
    padding: 0px;
    border: 1px solid #696969;
    border-radius: 4px;
    background-color: transparent;
  }

  QToolBox:selected {
    padding: 0px;
    border: 0px solid #4882ff;
  }

  QToolBox::tab {
    background-color: transparent;
    border: 0px solid #696969;
    color: white;
    background-image: url(qss:images_dark-light/down_arrow_lighter.svg);
    background-repeat: none;
    background-position: center left;
  }

  QToolBox::tab:disabled {
    color: #696969;
  }

  QToolBox::tab:selected {
    background-color: #696969;
    background-image: url(qss:images_dark-light/transparent.svg);
    padding-right: 5px;
    background-repeat: none;
  }

  QToolBox::tab:selected:disabled {
    background-color: #696969;
    border-bottom: 0px solid #cccccc;
    color: white;
  }

  QToolBox::tab:!selected {

  }

  QToolBox::tab:!selected:disabled {
    background-color: #7F7F7F;
  }

  QToolBox::tab:hover {
    background-color: #4882ff;
    }

  QToolBox QScrollArea QWidget QWidget {
    padding: 0px;
    border: 0px;
    background-color: transparent;
  }

  /* QFrame -----------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qframe
  https://doc.qt.io/qt-5/qframe.html#-prop
  https://doc.qt.io/qt-5/qframe.html#details
  https://stackoverflow.com/questions/14581498/qt-stylesheet-for-hline-vline-color

  --------------------------------------------------------------------------- */
  /* (dot) .QFrame  fix #141, #126, #123 */
  .QFrame {
    border-radius: 0px;
    border: 0px solid #696968;
    background-color: #696969;
    /* No frame */
    /* HLine */
    /* HLine */
  }

  .QFrame[frameShape="0"] {
    border-radius: 1.9px;
    border: 1px solid #696968;
  }

  .QFrame[frameShape="4"] {
    max-height: 1px;
    border: none;
    background-color: #696968;
  }

  .QFrame[frameShape="5"] {
    max-width: 1px;
    border: none;
    background-color: #7F7F7F;
  }

  /* QSplitter --------------------------------------------------------------

  https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qsplitter

  --------------------------------------------------------------------------- */
  QSplitter {
    background-color: #3c3c3c;
    spacing: 1px;
    padding: 1px;
    margin: 1px;
  }

  QSplitter::handle {
    margin: 0px 0px;
    padding: 0px;
  }

  QSplitter::handle:horizontal {
    background-image: url(qss:images_dark-light/splitter_vertical_dark.svg);
    background-position: center center;
    background-repeat: none;
    margin: 2px 2px 2px 2px;
    width: 1px;
  }

  QSplitter::handle:vertical {
    background-image: url(qss:images_dark-light/splitter_horizontal_dark.svg);
    background-position: center center;
    background-repeat: none;
    margin: 2px 2px 2px 2px;
    height: 1px;
  }

  QSplitter::handle:hover {
    background-image: url(qss:images_dark-light/splitter_horizontal_light.svg);
    background-position: center center;
    background-repeat: none;
    background-color: #4882ff;
  }

  /* QDateEdit, QDateTimeEdit -----------------------------------------------

  --------------------------------------------------------------------------- */
  QDateEdit, QDateTimeEdit {
    selection-background-color: #4882ff;
    border-style: solid;
    border: 1px solid #696968;
    border-radius: 1.9px;
    /* This fixes 103, 111 */
    padding-top: 2px;
    /* This fixes 103, 111 */
    padding-bottom: 2px;
    padding-left: 4px;
    padding-right: 4px;
    min-width: 10px;
  }

  QDateEdit:on, QDateTimeEdit:on {
    selection-background-color: #4882ff;
  }

  QDateEdit::drop-down, QDateTimeEdit::drop-down {
    subcontrol-origin: padding;
    subcontrol-position: top right;
    width: 12px;
    border-left: 1px solid #696968;
  }

  QDateEdit::down-arrow, QDateTimeEdit::down-arrow {
    image: url(qss:images_dark-light/down_arrow_disabled_light.svg);
    height: 8px;
    width: 8px;
  }

  QDateEdit::down-arrow:on, QDateEdit::down-arrow:hover, QDateEdit::down-arrow:focus, QDateTimeEdit::down-arrow:on, QDateTimeEdit::down-arrow:hover, QDateTimeEdit::down-arrow:focus {
    image: url(qss:images_dark-light/down_arrow_lighter.svg);
  }

  QDateEdit QAbstractItemView, QDateTimeEdit QAbstractItemView {
    background-color: #7F7F7F;
    border-radius: 2px;
    border: 1px solid #696968;
    selection-background-color: #4882ff;
  }

  /* QAbstractView ----------------------------------------------------------

  --------------------------------------------------------------------------- */
  QAbstractView:hover {
    border: 1px solid #4882ff;
    color: White;
  }

  QAbstractView:selected {
    background: #4882ff;
    color: White;
  }

  /* PlotWidget -------------------------------------------------------------

  --------------------------------------------------------------------------- */
  PlotWidget {
    /* Fix cut labels in plots #134 */
    padding: 0px;
  }