/* ==== Etykiety (etykiety-*): EtykietyHurtoweView + okno Generator etykiet (WindowGeneratorEtykiet) ====
   Wartości 1:1 z tabeli „Wartości kanoniczne” (docs/UI_STYLE_VAADIN8.md): nagłówek i lista jak wanted-*
   (wanted-list-v1.css), karty kroków jak sale-step-* i kafelki radio jak sale-receipt-choice (sale-form-v1.css),
   okno jak klient-dialog-* (klient-v1.css). */

/* ---- widok ---- */
.mytheme .etykiety-view {
  box-sizing: border-box;
  /* na niskim ekranie (1366x768) przewija się strona, zamiast ściskać listy do jednego wiersza */
  min-height: 720px;
  padding: 14px 18px 12px;
  background: #f7f7f8;
}

.mytheme .etykiety-view > .v-spacing {
  height: 12px;
}

.mytheme .etykiety-columns > .v-spacing {
  width: 12px;
}

/* nagłówek strony */
.mytheme .etykiety-page-header {
  box-sizing: border-box;
  width: 100%;
  padding: 18px 20px;
  border: 1px solid #ead8b8;
  border-radius: 12px;
  background: linear-gradient(115deg, #fff7e8, #fffdf8 58%, #fff);
}

.mytheme .v-label.etykiety-page-title {
  color: #282828;
  font-size: 27px !important;
  font-weight: 700;
  line-height: 1.25;
}

.mytheme .v-label.etykiety-page-subtitle {
  margin-top: 4px;
  color: #666;
  font-size: 13px;
  font-weight: 400;
  white-space: normal;
}

/* karta kroku */
.mytheme .etykiety-step-card {
  box-sizing: border-box;
  padding: 17px 19px 19px;
  border: 1px solid #dedede;
  border-top: 2px solid rgba(213, 155, 53, 0.62);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}

.mytheme .etykiety-step-card > .v-spacing {
  height: 12px;
}

.mytheme .etykiety-step-header {
  box-sizing: border-box;
  padding-bottom: 13px;
  border-bottom: 1px solid #e8e8e8;
}

.mytheme .v-label.etykiety-step-number {
  box-sizing: border-box;
  width: 34px !important;
  height: 34px;
  padding-top: 6px;
  border-radius: 50%;
  background: #d59b35;
  color: #17130c;
  font-size: 17px;
  font-weight: 800;
  text-align: center;
  box-shadow: 0 0 0 4px rgba(213, 155, 53, 0.12);
}

.mytheme .v-label.etykiety-step-title {
  color: #303030;
  font-size: 18px !important;
  font-weight: 700;
  line-height: 1.3;
}

.mytheme .v-label.etykiety-step-description {
  margin-top: 2px;
  color: #6e6e6e;
  font-size: 12px;
  font-weight: 400;
  white-space: normal;
}

/* licznik pozycji w nagłówku karty (jak wanted-count-badge) */
.mytheme .etykiety-count-badge {
  display: inline-block;
  min-width: 22px;
  margin-left: 8px;
  padding: 1px 7px;
  border-radius: 999px;
  background: #fff3dc;
  border: 1px solid #ead8b8;
  color: #6f4900;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
  vertical-align: middle;
}

/* pasek narzędzi w karcie */
.mytheme .etykiety-toolbar .v-button {
  height: 37px;
  border-radius: 6px;
  font-weight: 700;
}

.mytheme .etykiety-toolbar .v-filterselect {
  height: 37px;
}

.mytheme .etykiety-toolbar .v-caption {
  padding-bottom: 2px;
}

/* "Pokazano X z Y" na wysokości przycisków */
.mytheme .etykiety-toolbar .v-label {
  line-height: 37px;
}

/* lista w zaokrąglonym kontenerze */
.mytheme .etykiety-grid-container,
.mytheme .etykiety-grid-container .v-grid {
  overflow: hidden;
  border-radius: 9px;
}

.mytheme .etykiety-grid-container {
  border: 1px solid #dedede;
  background: #fff;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
}

.mytheme .etykiety-grid-container .v-grid {
  border: 0;
}

.mytheme .etykiety-grid-container .v-grid-header .v-grid-cell {
  background: #fafafa;
}

/* wersaliki tylko w nazwach kolumn, nie w wierszu filtrów (od-do) */
.mytheme .etykiety-grid-container .v-grid-header .v-grid-row:first-child .v-grid-cell {
  color: #555;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* przyciski kończące operację */
.mytheme .etykiety-actions .v-button {
  height: 46px;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 700;
}

/* ---- okno: Generator etykiet (etykiety-dialog-*) ---- */
.mytheme .v-window.etykiety-dialog-window {
  border-radius: 12px;
}

.mytheme .etykiety-dialog-content > .v-spacing {
  height: 14px;
}

.mytheme .etykiety-dialog-section {
  box-sizing: border-box;
  width: 100%;
  padding: 17px 19px 19px;
  border: 1px solid #dedede;
  border-top: 2px solid rgba(213, 155, 53, 0.62);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}

.mytheme .etykiety-dialog-section > .v-spacing {
  height: 8px;
}

.mytheme .v-label.etykiety-dialog-eyebrow {
  display: block;
  box-sizing: border-box;
  width: 100% !important;
  padding-bottom: 13px;
  border-bottom: 1px solid #e8e8e8;
  color: #303030;
  font-size: 18px !important;
  font-weight: 700;
  line-height: 1.3;
}

.mytheme .v-label.etykiety-dialog-help {
  color: #666;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.55;
  white-space: normal;
}

.mytheme .etykiety-dialog-actions .v-button {
  height: 46px;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 700;
}

/* rodzaj etykiety - kafelki radio (jak sale-receipt-choice) */
.mytheme .v-select-optiongroup.etykiety-choice {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  width: 100%;
}

.mytheme .etykiety-choice .v-radiobutton {
  box-sizing: border-box;
  display: block;
  flex: 1 1 240px;
  margin: 0;
  padding: 0;
  white-space: normal;
}

:root .mytheme .etykiety-choice .v-radiobutton {
  padding-left: 0;
}

/* Valo daje opcjom grupy różne marginesy i wygrywa specyficznością z margin:0 wyżej (pułapka z UI_STYLE). */
:root .mytheme .v-select-optiongroup.etykiety-choice .v-select-option.v-radiobutton {
  margin: 0;
}

.mytheme .etykiety-choice .etykiety-choice-description {
  display: block;
  margin-top: 2px;
  color: #666;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.55;
}

.mytheme .etykiety-choice .v-radiobutton > label {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  /* kafelki w jednym rzędzie równej wysokości, gdy opis jednego zawija się do dwóch linii */
  height: 100%;
  padding: 14px 16px 14px 48px;
  border: 1px solid #d8d8d8;
  border-radius: 10px;
  background: #fafafa;
  color: #303030;
  font-size: 15px;
  font-weight: 700;
  line-height: 20px;
  transition: border-color 120ms, background-color 120ms, box-shadow 120ms;
}

:root .mytheme .etykiety-choice .v-radiobutton > input ~ label:before,
:root .mytheme .etykiety-choice .v-radiobutton > input ~ label:after {
  top: 14px;
  left: 16px;
}

.mytheme .etykiety-choice .v-radiobutton > label:hover {
  border-color: #d59b35;
  background: #fffaf0;
}

:root .mytheme .etykiety-choice .v-radiobutton > input:checked ~ label {
  border-color: #d59b35;
  background: #fff3dc;
  box-shadow: 0 0 0 3px rgba(213, 155, 53, 0.18);
}

/* kropka zaznaczenia: Valo ma osobną regułę :checked (top/left 6px) - bez tego ląduje w rogu kafelka */
:root .mytheme .etykiety-choice .v-radiobutton > input:checked ~ label:after {
  top: 20px;
  left: 22px;
  background: #d59b35;
}

:root .mytheme .etykiety-choice .v-radiobutton > input:focus ~ label {
  border-color: #d59b35;
}
