/* FJN System — D206 (SPEC 1.231) E2-01 / E2-56 / E2-07 the new storage intake: cards of 848 px, three
   tiles, the bottom bar with „Uzupełnij: …”, the labels 100 × 50 printing at once. */
.fjn-sti { display: flex; flex-direction: column; gap: 14px; width: 100%; min-height: calc(100vh - var(--fjn-topbar-h)); }
.fjn-sti__form { display: flex; flex-direction: column; gap: 14px; flex: 1; }
.fjn-sti > :not(.fjn-form-footer, dialog), .fjn-sti__form > :not(.fjn-form-footer, dialog) { width: 100%; max-width: 848px; margin-left: auto; margin-right: auto; }
.fjn-sti > .fjn-form-footer, .fjn-sti__form > .fjn-form-footer { margin-top: auto; }
.fjn-sti__ask { margin: 8px 0 0; color: var(--fjn-text-2); }
.fjn-sti__choice { display: flex; align-items: center; gap: 14px; min-height: 116px; padding: 16px; border: 1px solid var(--fjn-border); border-radius: 10px; background: var(--fjn-surface); color: var(--fjn-text); text-decoration: none; }
.fjn-sti__choice > span { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.fjn-sti__choice b { font-size: 18px; }
.fjn-sti__choice small { color: var(--fjn-text-2); font-size: 14px; }
.fjn-sti__card { display: flex; flex-direction: column; gap: 10px; padding: 14px; border: 1px solid var(--fjn-border); border-radius: 10px; background: var(--fjn-surface); }
.fjn-sti__card.is-error { border-color: var(--fjn-danger-700); }
.fjn-sti__card h2 { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 16px; }
.fjn-sti__cardhead { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.fjn-sti__cardhead--wrap { flex-wrap: wrap; }
.fjn-sti__hint { padding: 2px 8px; border-radius: 999px; background: var(--fjn-brand-50, #EEF3FA); color: var(--fjn-brand-700, #1F4E87); font-size: 12px; font-weight: 700; }
.fjn-sti__label { font-size: 14px; font-weight: 700; }
.fjn-sti__plate { position: relative; }
.fjn-sti__plate .fjn-input { height: 56px; font-size: 20px; font-weight: 700; text-transform: uppercase; padding-right: 48px; }
.fjn-sti__plate.is-error .fjn-input { border-color: var(--fjn-danger-700); }
.fjn-sti__x { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); display: flex; padding: 8px; border: 0; background: none; cursor: pointer; }
.fjn-sti__found, .fjn-sti__pos { display: flex; flex-direction: column; gap: 4px; padding: 12px; border: 1px solid var(--fjn-brand-600); border-radius: 8px; background: var(--fjn-brand-50, #EEF3FA); }
.fjn-sti__found b { font-size: 16px; }
.fjn-sti__found small { display: flex; align-items: center; gap: 4px; color: var(--fjn-success-700); font-weight: 700; }
.fjn-sti__pos { border-color: transparent; background: var(--fjn-success-100); color: var(--fjn-success-700); }
.fjn-sti__info { display: flex; gap: 8px; margin: 0; padding: 10px 12px; border-radius: 8px; background: var(--fjn-warning-100); color: var(--fjn-warning-700); font-size: 14px; }
.fjn-sti__err { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--fjn-danger-700); font-size: 14px; font-weight: 700; }
.fjn-sti__note { margin: 0; color: var(--fjn-text-2); font-size: 13px; }
.fjn-sti__tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.fjn-sti__tiles--pay { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.fjn-sti__tiles--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fjn-sti__tile { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 72px; padding: 8px; border: 1px solid var(--fjn-border); border-radius: 8px; background: var(--fjn-surface); text-align: center; cursor: pointer; }
.fjn-sti__tile--pay { min-height: 56px; }
.fjn-sti__tile.is-on { border-color: var(--fjn-brand-600); background: var(--fjn-brand-600); color: var(--fjn-text-inverse); }
.fjn-sti__tile.is-hint { border: 1px dashed var(--fjn-brand-600); background: var(--fjn-brand-50, #EEF3FA); color: var(--fjn-brand-700, #1F4E87); }
.fjn-sti__tile small { font-size: 12px; font-weight: 700; }
.fjn-sti__tile:focus-within { box-shadow: var(--fjn-focus-btn); }
.fjn-sti__term { display: flex; flex-direction: column; gap: 8px; padding: 12px; border-radius: 8px; background: var(--fjn-bg); }
.fjn-sti__termrow { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.fjn-sti__chip { display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border: 1px solid var(--fjn-border); border-radius: 8px; background: var(--fjn-surface); font-weight: 700; cursor: pointer; }
.fjn-sti__chip.is-on { border-color: var(--fjn-brand-600); background: var(--fjn-brand-600); color: var(--fjn-text-inverse); }
.fjn-sti__chip--big { min-height: 48px; font-size: 15px; }
.fjn-sti__services { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.fjn-sti__progress { display: flex; align-items: center; gap: 12px; }
.fjn-sti__progress progress { flex: 1; height: 10px; accent-color: var(--fjn-success-700); }
.fjn-sti__new { display: flex; flex-direction: column; gap: 10px; padding: 12px; border: 1px solid var(--fjn-border); border-radius: 8px; }
.fjn-sti__new h3 { margin: 0; font-size: 15px; }
.fjn-sti__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.fjn-sti__field { display: flex; flex-direction: column; gap: 4px; }
.fjn-sti__field label { font-size: 14px; font-weight: 700; }
.fjn-sti__field .fjn-input { height: 56px; }
.fjn-sti__field.is-error .fjn-input { border-color: var(--fjn-danger-700); }
.fjn-sti__opt { font-weight: 400; color: var(--fjn-text-2); }
.fjn-sti__phone { display: flex; align-items: center; gap: 6px; padding-left: 8px; border: 1px solid var(--fjn-border-strong); border-radius: 8px; background: var(--fjn-surface); }
.fjn-sti__phone .fjn-input { border: 0; height: 54px; font-weight: 700; }
.fjn-sti__cc { padding: 6px 8px; border-radius: 6px; background: var(--fjn-bg); font-size: 13px; }
.fjn-sti__consents { display: flex; flex-direction: column; gap: 10px; }
.fjn-sti__switch { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; max-width: 420px; cursor: pointer; }
.fjn-sti__list { display: flex; flex-direction: column; margin: 0; padding: 0; list-style: none; }
.fjn-sti__list li { display: grid; grid-template-columns: 24px 110px 1fr 24px; align-items: center; gap: 10px; min-height: 36px; font-size: 14px; }
.fjn-sti__list li.is-done { color: var(--fjn-success-700); }
.fjn-sti__list li.is-now { color: var(--fjn-brand-600); }
.fjn-sti__bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.fjn-sti__sum { display: flex; flex-direction: column; gap: 2px; font-size: 13px; }
.fjn-sti__sum b { font-size: 18px; }
.fjn-sti__miss { color: var(--fjn-danger-700); font-weight: 700; }
.fjn-sti__go[aria-disabled="true"] { background: var(--fjn-text-3, #8A939E); border-color: transparent; }
.fjn-sti__acts { display: flex; gap: 8px; }
.fjn-sti__done { display: flex; flex-direction: column; gap: 6px; padding: 16px; border: 1px solid var(--fjn-success-700); border-radius: 10px; background: var(--fjn-success-100); color: var(--fjn-success-700); }
.fjn-sti__done h2 { margin: 0; font-size: 20px; }
.fjn-sti__done p { margin: 0; }
.fjn-sti__printing { color: var(--fjn-success-700); font-size: 13px; font-weight: 700; }
.fjn-sti__labels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.fjn-sti__label100 { display: flex; gap: 8px; padding: 8px; border: 1px solid var(--fjn-border-strong); border-radius: 4px; aspect-ratio: 2 / 1; overflow: hidden; }
.fjn-sti__qr svg { width: 100px; height: 100px; }
.fjn-sti__labeltext { display: flex; flex-direction: column; gap: 4px; min-width: 0; font-size: 11px; }
.fjn-sti__labeltext b { font-size: 20px; }
.fjn-sti__labeltext small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fjn-sti__plate100 { align-self: flex-start; padding: 0 4px; border: 1px solid var(--fjn-text); border-radius: 3px; font-weight: 700; }
.fjn-sti__printframe { position: absolute; width: 1px; height: 1px; border: 0; opacity: 0; pointer-events: none; }
.fjn-sti__twin { display: grid; grid-template-columns: 1fr 1.4fr; gap: 10px; }
.fjn-sti__twin .fjn-btn { min-height: 56px; }
@media (max-width: 1023px) { .fjn-sti__labels { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  .fjn-sti__tiles--pay { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fjn-sti__grid { grid-template-columns: minmax(0, 1fr); }
  .fjn-sti__labels { grid-template-columns: minmax(0, 1fr); }
  .fjn-sti__bar--batch { flex-direction: column; align-items: stretch; }
  .fjn-sti__bar--batch .fjn-sti__sum { flex-direction: row; justify-content: space-between; }
  .fjn-sti__acts .fjn-btn { flex: 1; }
  .fjn-sti__twin { grid-template-columns: minmax(0, 1fr); }
}
/* D206 E0-24 „Ceny magazynu” of a service */
.fjn-psp__note { margin: 0 0 8px; color: var(--fjn-text-2); font-size: 13px; }
.fjn-psp__kind { display: flex; flex-direction: column; gap: 8px; margin: 0 0 10px; padding: 12px; border: 1px solid var(--fjn-border); border-radius: 8px; }
.fjn-psp__kind.is-error { border-color: var(--fjn-danger-700); }
.fjn-psp__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.fjn-psp__head legend { float: left; padding: 0; font-weight: 700; }
.fjn-psp__price { display: flex; align-items: center; gap: 6px; }
.fjn-psp__price .fjn-input { width: 120px; height: 56px; text-align: right; font-weight: 700; }
.fjn-psp__err { margin: 0; color: var(--fjn-danger-700); font-size: 13px; font-weight: 700; }
.fjn-psp__incl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.fjn-psp__check { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 12px; border: 1px solid var(--fjn-border); border-radius: 8px; }
.fjn-psp__check input { width: 20px; height: 20px; accent-color: var(--fjn-brand-600); }
.fjn-psp__foot { display: flex; justify-content: flex-end; }
.fjn-psp__days { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
.fjn-psp__days .fjn-sts__opt { min-height: 56px; }
