/* Here, the content of the common custom CSS defined into Home - Setup - Display - CSS*/
/* =========================================================
   Dolibarr · Notion-style UI · SisèGrau v2
   Estable, net, sense trencar icones
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap');

:root {
  --sg-purple: #5b2d7b;
  --sg-text: #1f2937;
  --sg-muted: #6b7280;
  --sg-border: #e5e7eb;
  --sg-border-strong: #d1d5db;
  --sg-hover: #f5f7fa;
  --sg-row-active: #edf3f8;
}

/* Tipografia segura */
#id-right,
#id-right input,
#id-right select,
#id-right textarea,
#id-right button,
#id-right td,
#id-right th,
#id-right p,
#id-right a,
#id-right label,
#id-right div:not(.fa):not(.fas):not(.far):not(.fab):not(.fal),
#id-right span:not(.fa):not(.fas):not(.far):not(.fab):not(.fal) {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif !important;
  color: var(--sg-text);
  font-size: 14px;
}

/* Fix icones Font Awesome */
.fa,
.fas,
.far,
.fab,
.fal,
.fa:before,
.fas:before,
.far:before,
.fab:before,
.fal:before,
[class^="fa-"]:before,
[class*=" fa-"]:before {
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free", "FontAwesome" !important;
}

.fa,
.fas,
[class^="fa-"],
[class*=" fa-"] {
  font-weight: 900 !important;
}

.far {
  font-weight: 400 !important;
}

/* Menú superior */
#tmenu_tooltip,
#tmenu_tooltip a,
#tmenu_tooltip span,
#tmenu_tooltip div,
.tmenu,
.tmenu a,
.tmenu span,
.mainmenu,
.mainmenu a,
.mainmenu span {
  color: #ffffff !important;
}

#tmenu_tooltip .fa,
.tmenu .fa,
.mainmenu .fa,
#tmenu_tooltip .fas,
.tmenu .fas,
.mainmenu .fas {
  color: #ffffff !important;
}

/* Layout general */
#id-right {
  background: #f6f7f9 !important;
}

/* Targeta principal */
.div-table-responsive,
.div-table-responsive-no-min,
div.div-table-responsive {
  background: #ffffff !important;
  border: 1px solid var(--sg-border) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 6px 18px rgba(17, 24, 39, 0.035) !important;
}

/* Títol pàgina */
#id-right .titre,
#id-right .titre-withpicto,
#id-right h1 {
  font-weight: 500 !important;
  color: var(--sg-text) !important;
  letter-spacing: -0.01em;
}

/* Primera fila de filtres */
tr.liste_titre_filter,
tr.liste_titre:first-child {
  background: #ffffff !important;
  border-bottom: 1px solid var(--sg-border) !important;
}

/* Zona de cerca */
tr.liste_titre,
tr.liste_titre_filter + tr {
  background: #f8fafc !important;
}

/* Inputs i selects */
tr.liste_titre input,
tr.liste_titre_filter input,
tr.liste_titre select,
tr.liste_titre_filter select,
tr.liste_titre .select2-selection,
tr.liste_titre_filter .select2-selection {
  background: #fafafa !important;
  border: 1px solid var(--sg-border-strong) !important;
  border-radius: 10px !important;
  min-height: 34px !important;
  color: var(--sg-text) !important;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.05) !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}

tr.liste_titre input:hover,
tr.liste_titre_filter input:hover,
tr.liste_titre select:hover,
tr.liste_titre_filter select:hover,
tr.liste_titre .select2-selection:hover,
tr.liste_titre_filter .select2-selection:hover {
  border-color: #b8bec8 !important;
  background: #ffffff !important;
}

tr.liste_titre input:focus,
tr.liste_titre_filter input:focus,
tr.liste_titre select:focus,
tr.liste_titre_filter select:focus {
  border-color: var(--sg-purple) !important;
  box-shadow: 0 0 0 3px rgba(91, 45, 123, 0.13) !important;
  outline: none !important;
  background: #ffffff !important;
}

tr.liste_titre input::placeholder,
tr.liste_titre_filter input::placeholder {
  color: #9ca3af !important;
  opacity: 1 !important;
}

/* Icones filtres */
tr.liste_titre .fa,
tr.liste_titre_filter .fa,
tr.liste_titre .fas,
tr.liste_titre_filter .fas {
  color: var(--sg-purple) !important;
  opacity: 1 !important;
}

/* Capçalera de taula */
tr.liste_titre_bydiv,
tr.liste_titre_sel,
.liste_titre_bydiv {
  background: #f8fafc !important;
  border-top: 1px solid var(--sg-border) !important;
  border-bottom: 1px solid var(--sg-border-strong) !important;
}

tr.liste_titre th,
tr.liste_titre td,
tr.liste_titre_bydiv th,
tr.liste_titre_bydiv td,
tr.liste_titre_sel th,
tr.liste_titre_sel td {
  font-weight: 500 !important;
  color: var(--sg-muted) !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  line-height: 1.45 !important;
}

/* Títols de columna */
tr.liste_titre a,
tr.liste_titre_bydiv a,
tr.liste_titre_sel a {
  color: #374151 !important;
  font-weight: 500 !important;
}

/* Files de dades */
table.noborder tr.oddeven,
table.noborder tr.pair,
table.noborder tr.impair {
  background: #ffffff !important;
  border-bottom: 1px solid var(--sg-border) !important;
}

table.noborder tr.oddeven:nth-child(even),
table.noborder tr.pair:nth-child(even),
table.noborder tr.impair:nth-child(even) {
  background: #fcfcfd !important;
}

table.noborder tr.oddeven:hover,
table.noborder tr.pair:hover,
table.noborder tr.impair:hover {
  background: var(--sg-hover) !important;
}

/* Fila seleccionada */
table.noborder tr.highlight,
table.noborder tr.selected,
table.noborder tr:has(input[type="checkbox"]:checked) {
  background: var(--sg-row-active) !important;
}

/* Cel·les */
table.noborder td {
  color: var(--sg-text) !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

/* Links més subtils */
table.noborder a {
  color: #1f2937 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

table.noborder a:hover {
  color: var(--sg-purple) !important;
  text-decoration: underline !important;
}

/* Imports i números */
td.amount,
td.right,
td.nowraponall {
  color: #374151 !important;
  font-weight: 500 !important;
}

/* Badges */
.badge,
.badge-status,
.status,
span.status,
span.badge {
  border-radius: 999px !important;
  padding: 4px 10px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}

/* Checkboxes */
input[type="checkbox"] {
  accent-color: var(--sg-purple);
}

/* Botons */
.butAction,
.butActionDelete,
.button,
button {
  border-radius: 10px !important;
}

/* Icones superiors fora del menú */
.fa-plus-circle,
.fa-list,
.fa-th-list,
.fa-bars {
  color: #000078 !important;
}

/* Icones dins menú superior */
.tmenu .fa-plus-circle,
.tmenu .fa-list,
.tmenu .fa-th-list,
.tmenu .fa-bars,
.mainmenu .fa-plus-circle,
.mainmenu .fa-list,
.mainmenu .fa-th-list,
.mainmenu .fa-bars {
  color: #ffffff !important;
}

/* Sticky header */
.div-table-responsive {
  position: relative !important;
}

tr.liste_titre_bydiv {
  position: sticky !important;
  top: 0 !important;
  z-index: 5 !important;
}

/* Tooltips */
div.tooltip,
div#tooltip,
.ui-tooltip {
  border-radius: 12px !important;
  border: 1px solid var(--sg-border) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
  padding: 12px !important;
  background: #ffffff !important;
}

/* Scrollbar */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-thumb {
  background: #cfd5df;
  border-radius: 999px;
}

::-webkit-scrollbar-thumb:hover {
  background: #aeb7c5;
}

/* Estats Dolibarr més refinats */

#id-right .badge-status0,
#id-right .status0 {
  background: #f3f4f6 !important;
  color: #4b5563 !important;
  border: 1px solid #d1d5db !important;
}

#id-right .badge-status1,
#id-right .status1 {
  background: #fff7e6 !important;
  color: #92400e !important;
  border: 1px solid #fde68a !important;
}

#id-right .badge-status4,
#id-right .status4,
#id-right .badge-status6,
#id-right .status6 {
  background: #e8f5ef !important;
  color: #166534 !important;
  border: 1px solid #bbf7d0 !important;
}

#id-right .badge-status0,
#id-right .badge-status1,
#id-right .badge-status4,
#id-right .badge-status6,
#id-right .status0,
#id-right .status1,
#id-right .status4,
#id-right .status6 {
  border-radius: 999px !important;
  padding: 5px 11px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
}