/* ═══════════════════════════════════════════════════════
   TEMA — Clean Modern Light (Flat Design)
   Solo aspetto visivo. Nessuna modifica alla logica/struttura.
   Sfondo bianco, card pulite, hover riga evidente.
   ═══════════════════════════════════════════════════════ */

:root {
  --surface:      #ffffff;
  --canvas:       #f4f6f9;   /* sfondo area contenuto */
  --line:         #e8ecf0;   /* bordi sottili */
  --line-strong:  #d8dde5;
  --row-hover:    #edf1f7;   /* hover riga — grigio-blu leggero */
  --shadow-card:  0 1px 3px rgba(16,24,40,0.06), 0 1px 2px rgba(16,24,40,0.04);
}

/* ── SFONDO BIANCO ── */
body { background: var(--surface); }
body::before, body::after { content: none !important; display: none !important; }

#sidebar, #main { position: relative; }

/* ── SIDEBAR — navy scuro pulito ── */
#sidebar {
  background: #0f2b3d !important;
  border-right: 1px solid rgba(255,255,255,0.06) !important;
  box-shadow: none;
}

/* ── HEADER / TABS / TOOLBAR ── */
#app-header {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--line) !important;
  box-shadow: none !important;
}
.view-tabs {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--line) !important;
}
.toolbar {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--line) !important;
}
.toolbar-search {
  background: #f3f5f8 !important;
  border: 1px solid var(--line) !important;
  box-shadow: none !important;
}
.toolbar-search:focus-within {
  background: #fff !important;
  border-color: var(--blue) !important;
  box-shadow: 0 0 0 3px rgba(42,109,144,0.12) !important;
}
.toolbar-btn {
  background: #fff !important;
  border: 1px solid var(--line-strong) !important;
  box-shadow: none !important;
}
.toolbar-btn:hover {
  background: #f0f4f8 !important;
  border-color: rgba(42,109,144,0.30) !important;
  color: var(--blue) !important;
  transform: none !important;
}
.toolbar-btn.primary {
  background: var(--blue) !important;
  border-color: var(--blue) !important;
  color: #fff !important;
  box-shadow: 0 1px 3px rgba(42,109,144,0.25) !important;
}
.toolbar-btn.primary::before { content: none !important; }
.toolbar-btn.primary:hover {
  background: var(--blue-dark) !important;
  border-color: var(--blue-dark) !important;
  transform: none !important;
  box-shadow: 0 2px 6px rgba(42,109,144,0.30) !important;
}

/* ── AREA CONTENUTO ── */
#content { background: var(--canvas) !important; }
#main    { background: var(--canvas) !important; }

/* ── CARD / GRUPPI ── */
.list-group {
  background: var(--surface) !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow-card) !important;
}
.list-group-header {
  background: #fafbfd !important;
  border-bottom: 1px solid var(--line) !important;
}
.list-group-header:hover { background: #f2f5f9 !important; }
.list-table thead th {
  background: #fafbfd !important;
  border-bottom: 1px solid var(--line) !important;
  border-right: 1px solid var(--line) !important;
  color: #8a93a3 !important;
}

/* ── RIGHE — hover ben visibile ── */
.list-row { transition: background 0.12s ease; }
.list-row:hover { background: var(--row-hover) !important; }
.list-row td { border-right: 1px solid var(--line) !important; }

/* ── BADGE STATO ── */
.status-badge {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

/* ── AVATAR ── */
.avatar {
  box-shadow: 0 1px 3px rgba(0,0,0,0.14) !important;
  border: 2px solid #fff !important;
}

/* ── TIMELINE BAR ── */
.timeline-bar::after {
  background: linear-gradient(90deg, rgba(255,255,255,0.28) 0%, transparent 65%) !important;
}

/* ── CALENDARIO ── */
.calendar-grid {
  background: var(--line) !important;
  border: 1px solid var(--line) !important;
  box-shadow: var(--shadow-card) !important;
  backdrop-filter: none !important;
}
.calendar-day { background: var(--surface) !important; }
.calendar-day:hover { background: var(--row-hover) !important; }
.calendar-day.other-month { background: #f8f9fb !important; }
.calendar-day.today { background: rgba(42,109,144,0.06) !important; }
.calendar-dow { background: #fafbfd !important; }
.calendar-today-btn, .calendar-nav-btn {
  background: #fff !important;
  border: 1px solid var(--line-strong) !important;
  box-shadow: none !important;
}
.cal-item { box-shadow: none !important; backdrop-filter: none !important; }

/* ── PERSON VIEW ── */
.pv-selector {
  background: var(--surface) !important;
  border-bottom: 1px solid var(--line) !important;
  box-shadow: 0 1px 3px rgba(16,24,40,0.05) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.pv-person-card {
  background: #fff !important;
  border: 1.5px solid var(--line-strong) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.pv-person-card:hover {
  background: #f0f4f9 !important;
  border-color: rgba(42,109,144,0.35) !important;
  box-shadow: 0 2px 8px rgba(16,24,40,0.08) !important;
  transform: none !important;
}
.pv-person-card.selected {
  background: rgba(42,109,144,0.08) !important;
  border-color: var(--blue) !important;
  box-shadow: 0 0 0 3px rgba(42,109,144,0.12) !important;
}

/* ── MODALI ── */
#modal-container [style*="background:#fff"],
#modal-container [style*="background: #fff"] {
  background: #fff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid var(--line) !important;
  box-shadow: 0 16px 48px rgba(16,24,40,0.16) !important;
}
#modal-container [style*="background:rgba(0,0,0,0.45)"],
#modal-container [style*="background: rgba(0,0,0,0.45)"] {
  background: rgba(16,24,40,0.50) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
#modal-container input,
#modal-container textarea,
#modal-container select {
  background: #fff !important;
  border: 1px solid var(--line-strong) !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}

/* ── DROPDOWN STATO / POPUP TIMELINE ── */
body > div[style*="position:absolute"],
body > div[style*="position: absolute"],
body > div[style*="position:fixed"],
.timeline-popup {
  background: #fff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid var(--line) !important;
  box-shadow: 0 8px 24px rgba(16,24,40,0.13) !important;
}

/* ── PANNELLO COMMENTI ── */
#comments-panel {
  background: #fff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-left: 1px solid var(--line) !important;
  box-shadow: -4px 0 24px rgba(16,24,40,0.10) !important;
}
.cp-comment {
  background: #f7f8fb !important;
  border: 1px solid var(--line) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.cp-input {
  background: #f7f8fb !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1.5px solid var(--line-strong) !important;
}
.cp-input:focus {
  background: #fff !important;
  border-color: var(--blue) !important;
  box-shadow: 0 0 0 3px rgba(42,109,144,0.10) !important;
}
.cp-send {
  background: var(--blue) !important;
  border: none !important;
  box-shadow: none !important;
}
.cp-send:hover {
  background: var(--blue-dark) !important;
  transform: none !important;
  box-shadow: none !important;
}

/* ── TOAST ── */
.toast {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: 0 6px 20px rgba(16,24,40,0.20) !important;
}

/* ── EMPTY STATE ── */
.list-empty-icon, .pv-empty-icon {
  background: #eef2f7 !important;
  backdrop-filter: none !important;
  border: 1px solid var(--line) !important;
}

/* ── SIDEBAR: dot senza glow ── */
.sidebar-launch-dot {
  box-shadow: none !important;
  filter: none !important;
  animation: none !important;
}

/* ── RIDOTTO MOVIMENTO ── */
@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}
