/* === Базовые стили === */
QDialog {
    background-color: #1a1a1a;
}

QLabel {
    color: white;
}

/* === Компоненты карточек === */
Card {
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: 15px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

Card.base-card {
    border-radius: 10px;
    min-height: 100px;
    max-height: 100px;
}

/* Заголовки и значения карточек */
Card QLabel.title {
    color: #FFB100;
    font-size: 12px;
    font-weight: bold;
}

Card QLabel.value {
    color: white;
    font-size: 20px;
    font-weight: bold;
}

Card QLabel.subtitle {
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
}

QLabel.status-value-online {
    color: #2ecc71;
    font-size: 20px;
    font-weight: bold;
}

QLabel.status-value-offline {
    color: #e74c3c;
    font-size: 20px;
    font-weight: bold;
}

.trend-up {
    color: #2ecc71;
    font-size: 12px;
}

/* === Карточки статуса === */
/* Зеленая карточка */
.status-card-green {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(46, 204, 113, 0.2),
        stop: 1 rgba(0, 0, 0, 0.7)
    );
    border: 1px solid rgba(46, 204, 113, 0.3);
}

.status-card-green:hover {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(46, 204, 113, 0.3),
        stop: 1 rgba(0, 0, 0, 0.8)
    );
    border: 1px solid rgba(46, 204, 113, 0.5);
}

/* Синяя карточка */
.status-card-blue {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(52, 152, 219, 0.2),
        stop: 1 rgba(0, 0, 0, 0.7)
    );
    border: 1px solid rgba(52, 152, 219, 0.3);
}

.status-card-blue:hover {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(52, 152, 219, 0.3),
        stop: 1 rgba(0, 0, 0, 0.8)
    );
    border: 1px solid rgba(52, 152, 219, 0.5);
}

/* Фиолетовая карточка */
.status-card-purple {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(155, 89, 182, 0.2),
        stop: 1 rgba(0, 0, 0, 0.7)
    );
    border: 1px solid rgba(155, 89, 182, 0.3);
}

.status-card-purple:hover {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(155, 89, 182, 0.3),
        stop: 1 rgba(0, 0, 0, 0.8)
    );
    border: 1px solid rgba(155, 89, 182, 0.5);
}

/* Красная карточка */
.status-card-red {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(231, 76, 60, 0.2),
        stop: 1 rgba(0, 0, 0, 0.7)
    );
    border: 1px solid rgba(231, 76, 60, 0.3);
}

.status-card-red:hover {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 1,
        stop: 0 rgba(231, 76, 60, 0.3),
        stop: 1 rgba(0, 0, 0, 0.8)
    );
    border: 1px solid rgba(231, 76, 60, 0.5);
}

/* === Кнопки === */
/* Навигационные кнопки */
QPushButton.nav-item {
    background: transparent;
    border: none;
    color: white;
    font-size: 14px;
    padding: 10px;
    text-align: left;
}

QPushButton.nav-item:hover {
    color: #FFB100;
}

QPushButton.nav-item:hover QIcon {
    fill: #FFB100;
}

/* Кнопка настроек */
QPushButton.icon-button {
    background: transparent;
    border: none;
    padding: 8px;
}

QPushButton.icon-button:hover {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
}

QPushButton.icon-button:pressed {
    background: rgba(255, 255, 255, 0.2);
}

/* Кнопка играть */
QPushButton.play-button {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 0,
        stop: 0 rgba(255, 177, 0, 0.8),
        stop: 1 rgba(255, 177, 0, 0.6)
    );
    border: 1px solid rgba(255, 177, 0, 0.3);
    border-radius: 8px;
    color: white;
    font-size: 18px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 2px;
}

QPushButton.play-button:hover {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 0,
        stop: 0 rgba(255, 177, 0, 0.9),
        stop: 1 rgba(255, 177, 0, 0.7)
    );
    border: 1px solid rgba(255, 177, 0, 0.5);
}

QPushButton.play-button:pressed {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 0,
        stop: 0 rgba(255, 147, 0, 0.8),
        stop: 1 rgba(255, 147, 0, 0.6)
    );
    border: 1px solid rgba(255, 147, 0, 0.5);
    padding-top: 2px;
}

QPushButton.play-button:disabled {
    background: #666666;
    color: #999999;
}

/* Кнопка играть (пульсация) */
QPushButton.play-button-pulse {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 0,
        stop: 0 #27ae60,
        stop: 0.5 #2ecc71,
        stop: 1 #27ae60
    );
    border: none;
    border-radius: 25px;
    color: white;
    font-size: 18px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 0px 20px;
}

/* Навигационные кнопки */
QPushButton.nav-button {
    background: transparent;
    border: none;
    color: white;
    padding: 8px 16px;
    font-weight: bold;
}

QPushButton.nav-button:hover {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
}

QPushButton.nav-button:pressed {
    background: rgba(255, 255, 255, 0.2);
}

/* === Элементы форм === */
/* Поля ввода */
QLineEdit.settings-input {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: white;
    padding: 8px;
}

/* Выпадающие списки */
QComboBox.settings-combobox {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: white;
    padding: 8px;
}

QComboBox.settings-combobox::drop-down {
    border: none;
}

QComboBox.settings-combobox::down-arrow {
    image: url(assets/images/arrow-down.svg);
    width: 12px;
    height: 12px;
}

/* Чекбоксы */
QCheckBox.settings-checkbox {
    color: white;
}

QCheckBox.settings-checkbox::indicator {
    width: 18px;
    height: 18px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
}

QCheckBox.settings-checkbox::indicator:checked {
    background: #2ecc71;
}

/* === Прогресс бар === */
QProgressBar.progress-bar {
    background: rgba(255, 255, 255, 0.1);
    border: none;
    border-radius: 2px;
}

QProgressBar.progress-bar::chunk {
    background: qlineargradient(
        x1: 0, y1: 0, x2: 1, y2: 0,
        stop: 0 rgba(255, 177, 0, 0.8),
        stop: 1 rgba(255, 177, 0, 0.6)
    );
    border-radius: 2px;
}

/* === Новости === */
QFrame.news-card {
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

QFrame.news-card:hover {
    background-color: rgba(0, 0, 0, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

QLabel.news-image {
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 8px;
}

QLabel.news-tag {
    background-color: #FFB100;
    color: black;
    border-radius: 4px;
    font-size: 12px;
    font-weight: bold;
    min-width: 80px;
    max-width: 120px;
}

QLabel.news-title {
    color: white;
    font-size: 16px;
    font-weight: bold;
}

QLabel.news-title[main="true"] {
    font-size: 20px;
}

QLabel.news-text {
    color: rgba(255, 255, 255, 0.7);
    font-size: 13px;
}

/* === Диалоги === */
QDialog.settings-dialog {
    background-color: #1a1a1a;
}

QLabel.settings-label {
    color: white;
    font-size: 14px;
    margin-top: 10px;
}

QDialog.settings-dialog QTabWidget::pane {
    border: 1px solid rgba(255, 255, 255, 0.1);
    background-color: rgba(0, 0, 0, 0.3);
}

QDialog.settings-dialog QTabBar::tab {
    background-color: rgba(0, 0, 0, 0.3);
    color: white;
    padding: 8px 20px;
    border: none;
}

QDialog.settings-dialog QTabBar::tab:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

QDialog.settings-dialog QTabBar::tab:selected {
    background-color: rgba(255, 177, 0, 0.2);
    border-bottom: 2px solid #FFB100;
}

/* Форма авторизации */
QLineEdit.login-input {
    padding: 10px 12px;
    min-height: 20px;
    min-width: 200px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: white;
    font-size: 14px;
}

QLineEdit.login-input:focus {
    border: 1px solid #FFB100;
    background: rgba(255, 177, 0, 0.1);
}

QPushButton.login-button {
    background: #FFB100;
    border: none;
    border-radius: 4px;
    padding: 8px 16px;
    color: black;
    font-weight: bold;
}

QPushButton.login-button:hover {
    background: #FFC133;
}

QPushButton.link-button {
    background: transparent;
    border: none;
    color: #FFB100;
}

QPushButton.link-button:hover {
    color: #FFC133;
}

/* Кнопка аккаунта */
QPushButton.account-button {
    background: rgba(255, 177, 0, 0.2);
    border: 1px solid #FFB100;
    border-radius: 4px;
    padding: 8px 16px;
    color: #FFB100;
    font-weight: bold;
}

QPushButton.account-button:hover {
    background: rgba(255, 177, 0, 0.3);
}

/* Меню аккаунта */
QMenu.account-menu {
    background: #1a1a1a;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 4px;
}

QMenu.account-menu::item {
    padding: 8px 16px;
    color: white;
}

QMenu.account-menu::item:selected {
    background: rgba(255, 177, 0, 0.2);
}

QMenu.account-menu::separator {
    height: 1px;
    background: rgba(255, 255, 255, 0.1);
    margin: 4px 0;
}

/* === Окно авторизации === */
QDialog#login-dialog {
    background: #1a1a1a;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
}

/* Поля ввода в окне авторизации */
QLineEdit.login-input {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 10px 12px;
    min-height: 20px;
    min-width: 200px;
    color: white;
    font-size: 14px;
}

QLineEdit.login-input:focus {
    border: 1px solid #FFB100;
    background: rgba(255, 177, 0, 0.1);
}

QLineEdit.login-input:hover {
    border: 1px solid rgba(255, 177, 0, 0.5);
}

/* Кнопки в окне авторизации */
QPushButton.link-button {
    background: transparent;
    border: none;
    color: #FFB100;
    font-size: 12px;
    text-decoration: underline;
}

QPushButton.link-button:hover {
    color: #FFC133;
}

/* Заголовок окна авторизации */
QLabel.login-title {
    color: white;
    font-size: 18px;
    font-weight: bold;
}

/* Кнопка входа */
QPushButton.login-button {
    background: #FFB100;
    border: none;
    border-radius: 4px;
    color: #1a1a1a;
    font-weight: bold;
    font-size: 14px;
}

QPushButton.login-button:hover {
    background: #FFC133;
}

QPushButton.login-button:pressed {
    background: #E69D00;
}

QPushButton.login-button:disabled {
    background: #666666;
    color: #999999;
}

/* === Окно настроек === */
QDialog#settings-dialog {
    background: #1a1a1a;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
}

/* Вкладки */
QTabWidget::pane {
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    background: rgba(0, 0, 0, 0.2);
}

QTabBar::tab {
    background: transparent;
    border: none;
    padding: 8px 16px;
    color: #999;
    font-size: 14px;
}

QTabBar::tab:selected {
    color: #FFB100;
    border-bottom: 2px solid #FFB100;
}

QTabBar::tab:hover:!selected {
    color: #FFC133;
}

/* Поля ввода в настройках */
QLineEdit.settings-input {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 10px 12px;
    min-height: 20px;
    color: white;
    font-size: 14px;
}

QLineEdit.settings-input:focus {
    border: 1px solid #FFB100;
    background: rgba(255, 177, 0, 0.1);
}

QLineEdit.settings-input:hover {
    border: 1px solid rgba(255, 177, 0, 0.5);
}

/* Комбо-боксы в настройках */
QComboBox.settings-combobox {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 10px 12px;
    min-height: 20px;
    color: white;
    font-size: 14px;
}

QComboBox.settings-combobox:hover {
    border: 1px solid rgba(255, 177, 0, 0.5);
}

QComboBox.settings-combobox:focus {
    border: 1px solid #FFB100;
}

QComboBox.settings-combobox::drop-down {
    border: none;
    width: 20px;
}

QComboBox.settings-combobox::down-arrow {
    image: url(assets/images/arrow-down.svg);
}

/* Чекбоксы в настройках */
QCheckBox.settings-checkbox {
    color: white;
    font-size: 14px;
    spacing: 8px;
}

QCheckBox.settings-checkbox::indicator {
    width: 18px;
    height: 18px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.05);
}

QCheckBox.settings-checkbox::indicator:checked {
    background: #FFB100;
    border-color: #FFB100;
    image: url(assets/images/checkmark.svg);
}

QCheckBox.settings-checkbox::indicator:hover {
    border-color: rgba(255, 177, 0, 0.5);
}

/* Кнопки в настройках */
QPushButton.save-button {
    background: #FFB100;
    border: none;
    border-radius: 4px;
    padding: 10px 20px;
    color: #1a1a1a;
    font-weight: bold;
    font-size: 14px;
}

QPushButton.save-button:hover {
    background: #FFC133;
}

QPushButton.cancel-button {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 10px 20px;
    color: white;
    font-size: 14px;
}

QPushButton.cancel-button:hover {
    background: rgba(255, 255, 255, 0.1);
}

QPushButton.browse-button {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 10px 20px;
    color: white;
    font-size: 14px;
}

QPushButton.browse-button:hover {
    border-color: #FFB100;
    color: #FFB100;
} 