/* Duże, wygodne wejścia na mobile */
input.form-control-lg, .form-select, textarea.form-control {
  font-size: 1.1rem;
}

/* Statystyki */
.stat { border: 1px dashed var(--bs-border-color); border-radius: .5rem; padding: .5rem; }
.stat .lbl { color: var(--bs-secondary-color); font-size: .8rem; }
.stat .val { font-weight: 700; font-size: 1.1rem; }

/* Wykres – zachowaj wysokość kontenera */
.chart-wrap { position: relative; height: 48vh; min-height: 260px; }

/* Przyklejone taby u góry na mobile */
.sticky-tabs {
  position: sticky;
  top: calc(56px + 0px); /* pod nagłówkiem */
  background: var(--bs-body-bg);
  z-index: 1020;
  padding-top: .25rem;
}

/* Tabela – klejony thead */
.table-sticky-header thead th {
  position: sticky; top: 0; z-index: 1;
  background: var(--bs-body-bg);
}

/* --- TAGI --- */
.tag-chips .tag-chip {
  --bs-btn-padding-y: .15rem;
  --bs-btn-padding-x: .45rem;
  --bs-btn-font-size: .85rem;
  border-radius: 999px;
}

.tag-manage .list-group-item {
  background: transparent;
  padding-left: 0; padding-right: 0;
}

.tag-manage input.form-control-sm {
  max-width: 260px;
}

/* Kolumna z notatką – zamiast inline style */
.note-col {
  max-width: 45ch;
  word-break: break-word;
}
