/**
 * QMS Theme Override - Uniforma tutte le pagine
 * Sostituisce colori hardcodati con variabili tema Dark/Light
 */

/* === BODY E BACKGROUND === */
body {
    background: var(--qms-bg) !important;
    color: var(--qms-text) !important;
    font-family: 'Segoe UI', -apple-system, BlinkMacSystemFont, Roboto, sans-serif !important;
}

/* === HEADER === */
.header,
.dashboard-header {
    background: linear-gradient(135deg, var(--qms-primary), var(--qms-primary-hover)) !important;
    color: white !important;
    will-change: auto;
    transform: translateZ(0);
    backface-visibility: hidden;
}

.header h1,
.dashboard-header h1 {
    color: white !important;
}

.header p,
.dashboard-header p {
    color: rgba(255, 255, 255, 0.9) !important;
}

/* === CARDS === */
.card,
.stat-card,
.section {
    background: var(--qms-bg-card) !important;
    color: var(--qms-text) !important;
    border-color: var(--qms-border) !important;
}

.card h2,
.card h3,
.section h2 {
    color: var(--qms-text) !important;
}

.card p,
.section p {
    color: var(--qms-text-secondary) !important;
}

/* === FORM ELEMENTS === */
input,
textarea,
select {
    background: var(--qms-bg-secondary) !important;
    color: var(--qms-text) !important;
    border: 1px solid var(--qms-border) !important;
}

input::placeholder,
textarea::placeholder {
    color: var(--qms-text-muted) !important;
}

/* === LABELS === */
label {
    color: var(--qms-text) !important;
}

/* === BUTTONS - Mantieni gradienti ma adatta al tema === */
.btn,
.card-button,
button:not(.qms-btn):not([data-theme-toggle]) {
    transition: all 0.3s ease;
}

/* === NAVIGATION MENU === */
.nav-menu {
    background: var(--qms-bg-card) !important;
    border-color: var(--qms-border) !important;
}

.nav-menu a {
    color: var(--qms-text) !important;
}

.nav-menu a:hover,
.nav-menu a.active {
    color: var(--qms-primary) !important;
}

/* === STATS CARDS === */
.stats-cards {
    display: grid;
}

.stat-card .number {
    color: var(--qms-primary) !important;
}

.stat-card .label {
    color: var(--qms-text-secondary) !important;
}

/* === TABLES === */
table {
    background: var(--qms-bg-card) !important;
    color: var(--qms-text) !important;
}

th {
    background: var(--qms-bg-secondary) !important;
    color: var(--qms-text) !important;
    border-color: var(--qms-border) !important;
}

td {
    border-color: var(--qms-border) !important;
    color: var(--qms-text) !important;
}

tr:hover {
    background: var(--qms-bg-secondary) !important;
}

/* === ALERTS === */
.alert,
.alert-info,
.alert-warning,
.alert-success,
.alert-danger {
    background: var(--qms-bg-card) !important;
    border-color: var(--qms-border) !important;
    color: var(--qms-text) !important;
}

/* === MODALS === */
.modal,
.modal-content {
    background: var(--qms-bg-card) !important;
    color: var(--qms-text) !important;
}

.modal-header {
    border-color: var(--qms-border) !important;
}

.modal-footer {
    border-color: var(--qms-border) !important;
}

/* === BADGES === */
.badge {
    background: var(--qms-bg-secondary) !important;
    color: var(--qms-text) !important;
}

/* === LISTS === */
ul, ol {
    color: var(--qms-text-secondary) !important;
}

/* === HR === */
hr {
    border-color: var(--qms-border) !important;
}

/* === SCROLLBAR STYLING (Dark Mode) === */
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: var(--qms-bg-secondary);
}

::-webkit-scrollbar-thumb {
    background: var(--qms-border);
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--qms-primary);
}

/* === LINKS === */
a:not(.qms-btn):not(.nav-link):not(.card-button) {
    color: var(--qms-primary) !important;
}

a:not(.qms-btn):not(.nav-link):not(.card-button):hover {
    color: var(--qms-primary-hover) !important;
}

/* === CODE BLOCKS === */
code, pre {
    background: var(--qms-bg-secondary) !important;
    color: var(--qms-text) !important;
    border-color: var(--qms-border) !important;
}

/* === TOOLTIPS === */
.tooltip {
    background: var(--qms-bg-card) !important;
    color: var(--qms-text) !important;
    border: 1px solid var(--qms-border) !important;
}

/* === TRANSITIONS SMOOTH === */
* {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

/* Escludi elementi con animazioni proprie */
button,
.card,
.qms-btn,
a {
    transition: all 0.3s ease;
}

