/*
 * KingsRoad — Skarbiec i Honory
 * Jeden arkusz do wklejenia w ACP MyBB.
 * Wersja 1.10.42
 */

/* ===== Skarbiec i wspólna nawigacja ===== */

/*
 * Skarbiec — CSS do wklejenia w panelu administracyjnym MyBB
 * Styl dopasowany do modulu Honory (krhonors.css).
 */

.krBank,
.krBank * {
  box-sizing: border-box;
}

.krBank {
  width: 100%;
  max-width: 1010px;
  margin: 30px auto;
  padding: 28px;
  color: var(--biel, #b2b2b2);
  color-scheme: dark;
  font-family: var(--basic, Arial, sans-serif);
}

.krBank > h1 {
  display: block;
  margin: 0;
  padding: 0 0 13px;
  border-bottom: 1px solid var(--borderprofil, #342525);
  color: #b2b2b2;
  font-family: Polish, var(--kursywa, Georgia, serif);
  font-size: 28px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 6px;
  line-height: 1.4;
  text-align: center;
  text-transform: lowercase;
}

.krBank h2,
.krBank h3 {
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-weight: normal;
  text-align: center;
}

.krBank h2 {
  margin: 0 0 22px;
  font-size: 23px;
}

.krBank h3 {
  margin: 0 0 14px;
  font-size: 18px;
}

.krBank p {
  line-height: 1.65;
}

.krBank a {
  color: var(--kolorprofil, #c4c0bc);
}

.krBank a:hover {
  color: var(--biel, #b2b2b2);
}

.krBank > nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin: 0 0 22px;
  padding: 14px 0 0;
}

.krBank > nav a,
.krBank button,
.krBank input[type="submit"],
.krBank .krBank-button {
  display: inline-block;
  min-height: 38px;
  padding: 9px 16px;
  border: 1px solid var(--borderprofil, #342525);
  border-radius: 0;
  background: var(--gradient, #1e1717);
  color: var(--biel, #b2b2b2);
  font-family: var(--basic, Arial, sans-serif);
  font-size: 14px;
  font-weight: normal;
  line-height: 18px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: border-color .2s ease, color .2s ease, background .2s ease;
}

.krBank > nav a:hover,
.krBank > nav a.active,
.krBank button:hover,
.krBank input[type="submit"]:hover,
.krBank .krBank-button:hover {
  border-color: var(--kolorprofil, #c4c0bc);
  background: var(--tlo, #211a1a);
  color: var(--kolorprofil, #c4c0bc);
}

.krBank > .krBankNav {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: 0;
  margin: 18px 0 26px;
  padding: 20px 16px 18px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
}

.krBank > .krBankNav a {
  display: flex;
  min-width: 0;
  min-height: 86px;
  padding: 0 8px;
  border: 0;
  border-right: 1px solid rgba(99, 71, 71, .24);
  background: transparent;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
}

.krBank > .krBankNav a:last-child {
  border-right: 0;
}

.krBank > .krBankNav a:hover,
.krBank > .krBankNav a.active {
  border-color: rgba(99, 71, 71, .24);
  background: transparent;
}

.krBank .krNavIcon {
  display: inline-flex;
  width: 42px;
  height: 42px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--body, #171313);
  color: var(--biel, #b2b2b2);
  align-items: center;
  justify-content: center;
  font-family: Georgia, serif;
  font-size: 17px;
  line-height: 1;
  transition: border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}

.krBank .krNavLabel {
  overflow: hidden;
  max-width: 100%;
  color: var(--biel, #b2b2b2);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 12px;
  letter-spacing: .8px;
  line-height: 1.25;
  text-align: center;
  text-overflow: ellipsis;
}

.krBank > .krBankNav a:hover .krNavIcon,
.krBank > .krBankNav a:focus-visible .krNavIcon,
.krBank > .krBankNav a.active .krNavIcon {
  border-color: var(--kolorprofil, #c4c0bc);
  background: transparent;
  color: var(--kolorprofil, #c4c0bc);
  transform: none;
}

.krBank > .krBankNav a.active .krNavLabel {
  color: var(--kolorprofil, #c4c0bc);
}

.krBank > .krBankAdminNav {
  justify-content: center;
  margin: 30px 0 0;
  padding: 22px 0 0;
  border-top: 1px solid var(--borderprofil, #342525);
}

.krBank > .krBankAdminNav .krAdminNavTitle {
  width: 100%;
  margin-bottom: 3px;
  color: var(--biel, #b2b2b2);
  font-family: var(--basic, Arial, sans-serif);
  font-size: 9px;
  letter-spacing: 3px;
  text-align: center;
  text-transform: uppercase;
  opacity: .55;
}

.krBank section,
.krBank .krBank-panel,
.krBank .krBank-card,
.krBank .krBank-player,
.krBank .krBank-item,
.krBank .krBank-activity,
.krBank .krBank-claim,
.krBank .krBank-inventory {
  margin: 24px 0;
  padding: 28px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
}

.krBank-grid,
.krBank-players,
.krBank-shop,
.krBank-activities,
.krBank-inventory-grid,
.krBank .krPlayerGrid {
  display: grid;
  gap: 14px;
}

.krBank-grid,
.krBank-players,
.krBank-shop,
.krBank-activities,
.krBank-inventory-grid {
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
}

.krBank .krPlayerGrid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  counter-reset: kr-player;
}

.krBank section.krPlayersDirectory {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.krBank .krPlayerSort {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-items: center;
  justify-content: flex-end;
  margin: 0 0 20px;
}

.krBank .krPlayerSort label {
  margin: 0 5px 0 0;
  color: var(--biel, #b2b2b2);
  font-family: var(--basic, Arial, sans-serif);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.krBank .krPlayerSort select {
  width: auto;
  min-width: 250px;
  margin: 0;
}

.krBank .krPlayerSort button {
  min-height: 38px;
}

.krBank-players .krBank-player,
.krBank-shop .krBank-item,
.krBank-activities .krBank-activity,
.krBank-inventory-grid .krBank-inventory {
  margin: 0;
}

.krBank-player {
  display: block;
  color: var(--biel, #b2b2b2);
  text-decoration: none;
}

.krBank .krPlayerCard {
  display: grid;
  min-width: 0;
  min-height: 128px;
  padding: 20px;
  border: 1px solid var(--borderprofil, #342525);
  grid-template-columns: 22px minmax(0, 1fr) 54px;
  gap: 12px;
  align-items: center;
  background: var(--gradient, #1e1717);
  color: var(--biel, #b2b2b2);
  text-align: left;
  text-decoration: none;
  counter-increment: kr-player;
  transition: border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}

.krBank .krPlayerCard:hover,
.krBank .krPlayerCard:focus {
  border-color: var(--kr-member-faction-color, var(--kolorprofil, #c4c0bc));
  background: var(--tlo, #211a1a);
  color: var(--kolorprofil, #c4c0bc);
  transform: translateY(-2px);
}

.krBank .krPlayerIndex {
  color: var(--biel, #b2b2b2);
  font-family: var(--basic, Arial, sans-serif);
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 1px;
  opacity: .42;
  text-align: center;
}

.krBank .krPlayerIndex::before {
  content: counter(kr-player, decimal-leading-zero);
}

.krBank .krPlayerName {
  display: block;
  min-width: 0;
  color: var(--biel, #b2b2b2) !important;
  font-family: var(--medieval, var(--kursywa, Georgia, serif));
  font-size: 20px;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
}

.krBank .krPlayerNameWord {
  display: inline;
  color: var(--biel, #b2b2b2) !important;
  white-space: nowrap;
}

.krBank .krPlayerNameInitial {
  display: inline-grid;
  width: 1em;
  height: 1em;
  margin-right: .08em;
  place-items: center;
  vertical-align: .08em;
  color: var(--biel, #b2b2b2) !important;
  font-size: 1em;
  line-height: 1;
  background: var(--kr-member-faction-color, var(--kolorpost, #634747));
  border: 1px solid color-mix(in srgb, var(--kr-member-faction-color, #634747) 75%, var(--borderprofil, #342525));
}

.krBank .krPlayerBalance {
  display: flex;
  min-height: 54px;
  margin: 0;
  padding-left: 12px;
  border-left: 1px solid var(--borderprofil, #342525);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--kolorprofil, #c4c0bc);
  text-align: center;
}

.krBank .krPlayerBalance strong {
  display: block;
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 23px;
  font-weight: normal;
  line-height: 1;
}

.krBank .krPlayerBalance small {
  display: block;
  margin-top: 5px;
  color: var(--biel, #b2b2b2);
  font-family: var(--basic, Arial, sans-serif);
  font-size: 9px;
  letter-spacing: 2px;
  line-height: 1;
  text-transform: uppercase;
}

.krBank .krPlayerOverview {
  text-align: center;
}

.krBank .krPlayerOverview h2 {
  margin-bottom: 14px;
}

.krBank .krPlayerOverview .krPlayerName {
  font-size: 24px;
}

.krBank .krPlayerOverview p {
  margin: 0;
  font-size: 12px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.krBank .krPlayerOverview p strong {
  margin-left: 8px;
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 19px;
  font-weight: normal;
  letter-spacing: 0;
  text-transform: none;
}

.krBank .krPlayerDataSection > h2 {
  margin-bottom: 18px;
}

.krBank .krPlayerScroll {
  width: 100%;
  max-height: 440px;
  overflow: auto;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--tlo, #211a1a);
  scrollbar-color: var(--kolorprofil, #6a5e5e) var(--tlo, #211a1a);
  scrollbar-width: thin;
}

.krBank .krPlayerHonorsScroll {
  max-height: 480px;
  padding: 18px;
}

.krStatsPanel {
  box-sizing: border-box;
  margin: 24px 0;
  padding: 28px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
  color: var(--biel, #b2b2b2);
}

.krStatsPanel > h2 {
  margin: 0 0 18px;
  color: var(--kolorprofil, #c4c0bc);
  font: normal 23px/1.2 var(--kursywa, Georgia, serif);
  text-align: center;
}

.krStatsGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 16px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--tlo, #211a1a);
}

.krStat {
  display: grid;
  min-height: 30px;
  padding: 2px 0;
  grid-template-columns: minmax(110px, .7fr) minmax(160px, 3fr) minmax(62px, auto);
  align-items: center;
  gap: 16px;
}

.krStat .krStatName {
  font-size: 12px;
  letter-spacing: .5px;
}

.krStat strong {
  color: var(--kolorprofil, #c4c0bc);
  font: normal 16px/1 var(--kursywa, Georgia, serif);
  text-align: right;
  white-space: nowrap;
}

.krStat strong small {
  display: none;
}

.krStatTrack {
  display: block;
  height: 5px;
  overflow: hidden;
  background: rgba(178, 178, 178, .12);
}

.krStatTrack i {
  display: block;
  height: 100%;
  min-width: 0;
  background: var(--kolorpost, var(--kolorprofil, #634747));
  transition: width .25s ease;
}

.krBank .krPlayerLedgerScroll {
  max-height: 520px;
}

.krBank .krPlayerScroll:focus-visible {
  outline: 1px solid var(--kolorprofil, #c4c0bc);
  outline-offset: 3px;
}

.krBank .krPlayerScroll > table {
  margin: 0;
  border: 0;
}

.krBank .krPlayerScroll > table tr:first-child th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--gradient, #1e1717);
}

.krBank .krPlayerScroll > .krEmpty {
  margin: 0;
  padding: 24px;
  text-align: center;
}

.krBank .krInventoryRegistry {
  padding: 4px 22px;
}

.krBank .krInventoryRow {
  display: grid;
  grid-template-columns: 12px minmax(180px, 1fr) 105px auto;
  gap: 18px;
  min-height: 62px;
  padding: 13px 6px;
  border-bottom: 1px solid rgba(99, 71, 71, .24);
  align-items: center;
}

.krBank .krInventoryRow:last-child {
  border-bottom: 0;
}

.krBank .krInventoryDot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--kolorprofil, #c4c0bc);
  box-shadow: 0 0 0 3px rgba(196, 192, 188, .04);
  cursor: help;
}

.krBank .krInventoryDot:focus-visible {
  outline: 1px solid var(--kolorprofil, #c4c0bc);
  outline-offset: 4px;
}

.krBank .krInventoryRow.is-request .krInventoryDot {
  background: #9c4848;
}

.krBank .krInventoryRow.is-inactive .krInventoryDot {
  background: #766f69;
}

.krBank .krInventoryRow.is-inactive .krInventoryName {
  text-decoration: line-through;
  text-decoration-thickness: 1px;
  text-decoration-color: currentColor;
  opacity: .62;
}

.krBank .krInventoryName {
  display: inline;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--medieval, var(--kursywa, Georgia, serif));
  font-size: 17px;
  line-height: 1.35;
  text-align: left;
  text-transform: none;
}

.krBank .krInventoryName:hover,
.krBank .krInventoryName:focus-visible {
  border: 0;
  background: transparent;
  color: var(--biel, #b2b2b2);
  outline: 0;
  text-decoration: underline;
  text-decoration-color: var(--borderprofil, #342525);
  text-underline-offset: 5px;
}

.krBank .krInventoryRow.is-inactive .krInventoryName:hover,
.krBank .krInventoryRow.is-inactive .krInventoryName:focus-visible {
  text-decoration-line: line-through underline;
}

.krBank .krInventoryRow time {
  color: var(--biel, #b2b2b2);
  font-size: 11px;
  opacity: .58;
}

.krBank .krInventoryActions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  justify-content: flex-end;
}

.krBank .krInventoryActions form {
  margin: 0;
}

.krBank .krInventoryRequestState,
.krBank .krInventoryRequestNote {
  color: var(--biel, #b2b2b2);
  font-size: 9px;
  letter-spacing: .5px;
  opacity: .68;
}

.krBank .krInventoryRequestNote {
  cursor: help;
  text-decoration: underline dotted;
  text-underline-offset: 3px;
}

.krBank .krInventoryActions button {
  min-height: 30px;
  padding: 5px 9px;
  font-size: 10px;
  line-height: 18px;
}

.krBank .krInventoryDialog {
  width: min(460px, calc(100vw - 32px));
  max-height: calc(100vh - 48px);
  margin: auto;
  padding: 0;
  border: 1px solid var(--kolorprofil, #c4c0bc);
  background: var(--body, #171313);
  color: var(--biel, #b2b2b2);
  box-shadow: 0 24px 80px rgba(0, 0, 0, .72);
  overflow: auto;
}

.krBank .krInventoryDialog::backdrop {
  background: rgba(8, 7, 7, .78);
  backdrop-filter: blur(2px);
}

.krBank .krInventoryDialogHead {
  display: flex;
  min-height: 54px;
  padding: 12px 14px 12px 20px;
  border-bottom: 1px solid var(--borderprofil, #342525);
  align-items: center;
  justify-content: space-between;
}

.krBank .krInventoryDialogHead strong {
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 17px;
  font-weight: normal;
}

.krBank .krInventoryDialog .krInventoryDialogClose {
  width: 32px;
  min-width: 32px;
  min-height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 22px;
}

.krBank .krInventoryDialog > form {
  padding: 20px;
}

.krBank .krInventoryDialogButtons {
  display: flex;
  gap: 8px;
  margin-top: 16px;
  justify-content: flex-end;
}

.krInventoryFloatingTooltip {
  white-space: pre-line;
}

.krBank .krThreadPicker {
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr) auto;
  gap: 12px;
  align-items: stretch;
}

.krBank .krThreadPicker label { display: contents; margin: 0; }
.krBank .krThreadPicker label > span {
  align-self: center;
  white-space: nowrap;
}
.krBank .krThreadPicker select,
.krBank .krThreadPicker button {
  box-sizing: border-box;
  min-height: 46px;
  height: 46px;
  margin: 0;
}
.krBank .krThreadPicker select { width: 100%; }
.krBank .krThreadPicker button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.krBank .krPlayerHonors .krLevel {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
}

.krBank.is-ajax-loading {
  opacity: .48;
  pointer-events: none;
  transition: opacity .15s ease;
}

.krBank.is-ajax-loading::after {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 1000;
  padding: 10px 14px;
  content: "ładowanie…";
  transform: translate(-50%, -50%);
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
  color: var(--biel, #b2b2b2);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: lowercase;
}

.krBank .krPagination {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: center;
  margin: 24px 0 0;
}

.krBank .krPagination a {
  display: inline-grid;
  min-width: 34px;
  height: 34px;
  padding: 0 8px;
  border: 1px solid var(--borderprofil, #342525);
  place-items: center;
  background: var(--gradient, #1e1717);
  color: var(--biel, #b2b2b2);
  font-size: 11px;
  text-decoration: none;
}

.krBank .krPagination a:hover,
.krBank .krPagination a.active {
  border-color: var(--kolorprofil, #c4c0bc);
  background: var(--tlo, #211a1a);
  color: var(--kolorprofil, #c4c0bc);
}

.krBank .krPaginationGap {
  display: inline-grid;
  min-width: 24px;
  height: 34px;
  place-items: center;
  color: var(--biel, #b2b2b2);
  opacity: .6;
}

.krBank .krActivityActions {
  margin: 0 0 20px;
  text-align: center;
}

.krBank-player:hover {
  border-color: var(--kolorprofil, #c4c0bc);
  background: var(--tlo, #211a1a);
}

.krBank-player strong,
.krBank-balance,
.krBank-price,
.krBank-points {
  display: block;
  color: var(--kolorprofil, #c4c0bc);
}

.krBank-player strong {
  margin-bottom: 8px;
  font-family: var(--kursywa, Georgia, serif);
  font-size: 18px;
  font-weight: normal;
}

.krBank-balance {
  font-size: 14px;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.krBank form {
  margin: 0;
}

.krBank label {
  display: block;
  margin: 0 0 6px;
  color: var(--biel, #b2b2b2);
  font-size: 13px;
}

.krBank input:not([type]),
.krBank input[type="text"],
.krBank input[type="number"],
.krBank input[type="url"],
.krBank input[type="search"],
.krBank select,
.krBank textarea {
  width: 100%;
  min-height: 38px;
  margin: 0 0 12px;
  padding: 9px 11px;
  border: 1px solid #634747;
  border-radius: 0;
  outline: 0;
  background: var(--tlo, #211a1a);
  color: var(--biel, #b2b2b2);
  font-family: var(--basic, Arial, sans-serif);
  font-size: 14px;
}

.krBank textarea {
  min-height: 100px;
  resize: vertical;
}

.krBank input:focus,
.krBank select:focus,
.krBank textarea:focus {
  border-color: var(--kolorprofil, #c4c0bc);
}

.krBank input[type="checkbox"],
.krBank input[type="radio"] {
  margin-right: 7px;
  accent-color: #634747;
}

.krBank table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
}

.krBank th,
.krBank td {
  padding: 12px 14px;
  border: 1px solid var(--borderprofil, #342525);
  color: var(--biel, #b2b2b2);
  font-size: 13px;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
}

.krBank th {
  background: var(--tlo, #211a1a);
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 15px;
  font-weight: normal;
}

.krBank tr:hover td {
  background: rgba(99, 71, 71, .08);
}

.krBank .krBank-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.krBank .krBank-actions form {
  display: inline-block;
}

.krBank .krInlineForm {
  display: inline-block;
  margin: 2px 4px 2px 0;
}

.krBank .krTransactionEdit {
  display: grid;
  grid-template-columns: 64px minmax(120px, 1fr) 32px 32px;
  gap: 5px;
  align-items: center;
  min-width: 260px;
}

.krBank .krTransactionEdit input[type="number"],
.krBank .krTransactionEdit input[type="text"] {
  min-width: 0;
  min-height: 32px;
  height: 32px;
  margin: 0;
  padding: 5px 8px;
  background: var(--tlo, #211a1a);
  color: var(--biel, #b2b2b2);
  font-size: 12px;
}

.krBank .krTransactionEdit .krIconButton {
  display: inline-flex;
  width: 32px;
  min-width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  align-items: center;
  justify-content: center;
  color: var(--kolorprofil, #c4c0bc);
  font-size: 16px;
  line-height: 1;
}

.krBank .krTransactionEdit .krIconDanger {
  color: #b98282;
}

.krBank .krTransactionEdit .krIconButton:hover,
.krBank .krTransactionEdit .krIconButton:focus-visible {
  background: var(--body, #171313);
}

.krBank .krTransactionEdit.is-saving {
  opacity: .65;
}

.krBank .krTransactionStatus {
  grid-column: 1 / -1;
  min-height: 12px;
  color: var(--kolorprofil, #c4c0bc);
  font-size: 9px;
  letter-spacing: 1px;
  line-height: 1.2;
  text-align: right;
  text-transform: uppercase;
}

.krBank fieldset {
  margin: 18px 0;
  padding: 18px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--tlo, #211a1a);
}

.krBank legend {
  padding: 0 9px;
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 16px;
}

.krBank .krActivityChoice,
.krBank .krPostChoice {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin: 0;
  padding: 11px 0;
  border-bottom: 1px solid var(--borderprofil, #342525);
  cursor: pointer;
}

.krBank .krActivityChoice:last-child,
.krBank .krPostChoice:last-child {
  border-bottom: 0;
}

.krBank .krActivityChoice input,
.krBank .krPostChoice input {
  flex: 0 0 auto;
  margin-top: 3px;
}

.krBank .krPostChoiceText,
.krBank .krPostChoiceText strong,
.krBank .krPostChoiceText small,
.krBank .krPostChoiceText span {
  display: block;
}

.krBank .krPostChoiceText small {
  margin: 3px 0 7px;
}

.krBank button:disabled,
.krBank .krCannotBuy {
  cursor: not-allowed;
  opacity: .55;
}

.krBank .krMissingPoints {
  display: block;
  margin-top: 5px;
  color: #b98282;
  font-size: 12px;
}

.krBank .krBank-actions button,
.krBank .krBank-actions input[type="submit"] {
  min-height: 32px;
  padding: 6px 11px;
  font-size: 12px;
}

.krBank .krBank-message,
.krBank .success_message,
.krBank .error_message {
  margin: 18px 0;
  padding: 13px 16px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--tlo, #211a1a);
  color: var(--biel, #b2b2b2);
  text-align: center;
}

.krBank .error_message {
  border-color: #634747;
}

.krBank .krBank-muted,
.krBank small {
  color: var(--biel, #b2b2b2);
  opacity: .72;
}

.krBank .krBank-topic-list,
.krBank .krBank-post-list,
.krBank .krBank-checkbox-list {
  max-height: 420px;
  overflow-y: auto;
  margin: 12px 0 18px;
  padding: 4px 14px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--tlo, #211a1a);
}

.krBank .krBank-topic-list label,
.krBank .krBank-post-list label,
.krBank .krBank-checkbox-list label {
  margin: 0;
  padding: 11px 0;
  border-bottom: 1px solid var(--borderprofil, #342525);
}

.krBank .krBank-topic-list label:last-child,
.krBank .krBank-post-list label:last-child,
.krBank .krBank-checkbox-list label:last-child {
  border-bottom: 0;
}

.krBank .pagination {
  margin: 18px 0 0;
  text-align: center;
}

.krBank .pagination a,
.krBank .pagination span {
  display: inline-block;
  min-width: 32px;
  margin: 2px;
  padding: 6px 9px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
  color: var(--biel, #b2b2b2);
  text-decoration: none;
}

.krBank .pagination a:hover,
.krBank .pagination .pagination_current {
  border-color: var(--kolorprofil, #c4c0bc);
  color: var(--kolorprofil, #c4c0bc);
}

/* ===== Sklep ===== */

.krBank .krShopManager {
  padding: 0;
}

.krBank section.krShopShell {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.krBank .krShopIntro,
.krBank .krShopManagerHeader {
  display: flex;
  gap: 24px;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 24px;
  padding: 0 0 20px;
  border-bottom: 1px solid var(--borderprofil, #342525);
}

.krBank .krShopIntro {
  display: flex;
  margin: 0 0 22px;
  padding: 24px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
  flex-direction: column;
  justify-content: center;
  text-align: center;
}

.krBank .krShopIntro h2,
.krBank .krShopManagerHeader h2 {
  margin: 3px 0 0;
  text-align: left;
}

.krBank .krShopIntro h2 {
  margin: 0;
  text-align: center;
}

.krBank .krShopIntro p,
.krBank .krShopManagerHeader p {
  max-width: 470px;
  margin: 7px 0 0;
  color: var(--biel, #b2b2b2);
  font-size: 12px;
  opacity: .72;
}

.krBank .krShopManagerHeader p {
  margin: 0;
  text-align: right;
}

.krBank .krShopManagerHeader {
  display: block;
  margin: 24px 0;
  padding: 28px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
  text-align: center;
}

.krBank .krShopManagerHeader h2 {
  margin: 0;
  text-align: center;
}

.krBank .krShopEyebrow,
.krBank .krShopCategoryHeader > span {
  color: var(--kolorprofil, #c4c0bc);
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  opacity: .62;
}

.krBank .krShopWallet {
  display: inline-grid;
  min-width: 128px;
  margin-top: 10px;
  padding: 0;
  border-left: 0;
  grid-template-columns: auto auto;
  align-items: end;
  justify-content: center;
  text-align: center;
}

.krBank .krShopWallet span {
  grid-column: 1 / -1;
  margin-bottom: 4px;
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  opacity: .6;
}

.krBank .krShopWallet strong {
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 28px;
  font-weight: normal;
  line-height: 1;
}

.krBank .krShopWallet small {
  margin: 0 0 2px 6px;
  font-size: 9px;
  letter-spacing: 1px;
}

.krBank .krShopCategory {
  margin: 0 0 22px;
  padding: 22px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
}

.krBank .krShopCategoryHeader {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 28px;
  gap: 14px;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  cursor: pointer;
  list-style: none;
}

.krBank .krShopCategoryHeader::-webkit-details-marker { display: none; }

.krBank .krShopCategory:not([open]) .krShopCategoryHeader { margin-bottom: 0; }

.krBank .krShopCategoryHeader::before { content: ""; }
.krBank .krShopCategoryHeader::after { display: none; }

.krBank .krShopCategoryHeader h3 {
  grid-column: 2;
  margin: 0;
  font-size: 18px;
  text-align: center;
}

.krBank .krShopCategoryToggle {
  grid-column: 3;
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 1px solid var(--borderprofil, #342525);
  color: var(--kolorprofil, #c4c0bc);
  font: 17px/1 var(--basic, Arial, sans-serif);
  place-items: center;
}

.krBank .krShopCategoryToggle::before { content: "+"; }
.krBank .krShopCategory[open] .krShopCategoryToggle::before { content: "−"; }

.krBank .krShopCategoryHeader:hover .krShopCategoryToggle,
.krBank .krShopCategoryHeader:focus-visible .krShopCategoryToggle {
  border-color: var(--kolorprofil, #c4c0bc);
  background: rgba(99, 71, 71, .08);
}

.krBank .krShopProductGrid {
  display: block;
  border-top: 0;
  border-right: 1px solid var(--borderprofil, #342525);
  border-bottom: 1px solid var(--borderprofil, #342525);
  border-left: 1px solid var(--borderprofil, #342525);
  background: var(--body, #171313);
}

.krBank .krShopColumnHead,
.krBank .krShopProduct {
  display: grid;
  grid-template-columns: minmax(155px, .8fr) minmax(230px, 1.5fr) 72px 130px;
  gap: 14px;
  align-items: center;
}

.krBank .krShopColumnHead {
  padding: 8px 12px;
  border-top: 1px solid var(--borderprofil, #342525);
  border-bottom: 1px solid var(--borderprofil, #342525);
  color: var(--biel, #b2b2b2);
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  opacity: .55;
}

.krBank .krShopProduct {
  min-width: 0;
  min-height: 70px;
  padding: 13px 12px;
  border-bottom: 1px solid var(--borderprofil, #342525);
  background: transparent;
  transition: background .2s ease;
}

.krBank .krShopProduct:last-child {
  border-bottom: 0;
}

.krBank .krShopProduct:hover {
  background: rgba(99, 71, 71, .08);
}

.krBank .krShopProduct h4 {
  margin: 0;
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 16px;
  font-weight: normal;
  text-align: left;
}

.krBank .krShopRowPrice {
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 17px;
  font-weight: normal;
  white-space: nowrap;
}

.krBank .krShopRowPrice small {
  font-family: var(--basic, Arial, sans-serif);
  font-size: 8px;
  letter-spacing: 1px;
}

.krBank .krShopProduct > p {
  margin: 0;
  color: var(--biel, #b2b2b2);
  font-size: 12px;
  line-height: 1.55;
  opacity: .78;
  text-align: left;
}

.krBank .krShopColumnHead span:first-child,
.krBank .krShopColumnHead span:nth-child(2) { text-align: left; }

.krBank .krShopProduct > footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  text-align: right;
}

.krBank .krShopProduct button {
  min-height: 28px;
  padding: 4px 9px;
  font-size: 10px;
}

.krBank .krShopUnavailable {
  text-align: right;
}

.krBank .krShopCart {
  margin-top: 22px;
  padding: 22px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
}

.krBank .krShopCart > header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--borderprofil, #342525);
  align-items: center;
}

.krBank .krShopCart header small,
.krBank .krShopCart header strong {
  display: block;
}

.krBank .krShopCart header small {
  margin-bottom: 3px;
  font-size: 8px;
  letter-spacing: 2px;
  text-transform: uppercase;
  opacity: .6;
}

.krBank .krShopCart header strong,
.krBank .krShopCart header b {
  color: var(--kolorprofil, #c4c0bc);
  font-family: var(--kursywa, Georgia, serif);
  font-size: 17px;
  font-weight: normal;
}

.krBank .krShopCartItems {
  border-right: 1px solid var(--borderprofil, #342525);
  border-bottom: 1px solid var(--borderprofil, #342525);
  border-left: 1px solid var(--borderprofil, #342525);
  background: var(--body, #171313);
}

.krBank .krShopCartItems > p {
  margin: 0;
  padding: 18px;
  text-align: center;
  opacity: .55;
}

.krBank .krShopCartItem {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto 30px;
  gap: 12px;
  padding: 10px 18px;
  border-bottom: 1px solid rgba(99, 71, 71, .35);
  align-items: center;
}

.krBank .krShopCartQuantity {
  display:inline-grid;
  grid-template-columns:26px 30px 26px;
  align-items:center;
  text-align:center;
}

.krBank .krShopCartQuantity button {
  width:26px;
  min-width:26px;
  min-height:26px;
  padding:0;
}

.krBank .krShopCartQuantity b { font:normal 13px var(--basic,Arial,sans-serif); }

.krBank .krShopCartItem strong {
  color: var(--kolorprofil, #c4c0bc);
  font: normal 14px var(--kursywa, Georgia, serif);
}

.krBank .krShopCart .krShopCartRemove {
  width: 28px;
  min-width: 28px;
  min-height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 20px;
}

.krBank .krShopCart > footer {
  display: flex;
  gap: 14px;
  padding: 14px 0 0;
  align-items: center;
  justify-content: flex-end;
}

.krBank .krShopCart > footer > span {
  margin-right: auto;
  color: #b97b7b;
  font-size: 11px;
}

.krBank .krAddToCart.is-in-cart {
  border-color: #8d9a83;
  color: #aab5a1;
}

.krBank .krShopCart button:disabled {
  cursor: not-allowed;
  opacity: .4;
}

.krBank .krEventShop {
  margin-top: 28px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--body, #171313);
}

.krBank .krEventShop > summary {
  display: flex;
  padding: 17px 19px;
  align-items: center;
  justify-content: space-between;
  color: var(--kolorprofil, #c4c0bc);
  cursor: pointer;
  list-style: none;
}

.krBank .krEventShop > summary::-webkit-details-marker {
  display: none;
}

.krBank .krEventShop > summary span {
  font-family: var(--kursywa, Georgia, serif);
  font-size: 18px;
}

.krBank .krEventShop > summary small {
  display: block;
  margin-bottom: 3px;
  font-family: var(--basic, Arial, sans-serif);
  font-size: 8px;
  font-weight: bold;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.krBank .krEventShop > summary b {
  font-size: 22px;
  font-weight: normal;
  transition: transform .2s ease;
}

.krBank .krEventShop[open] > summary b {
  transform: rotate(45deg);
}

.krBank .krEventShopBody {
  padding: 0 18px 20px;
  border-top: 1px solid var(--borderprofil, #342525);
}

.krBank .krShopEmpty {
  padding: 18px;
  text-align: center;
}

/* Zarządzanie produktami */

.krBank .krShopAdminLegend,
.krBank .krShopAdminItem {
  display: grid;
  grid-template-columns: 34px minmax(150px, .8fr) minmax(260px, 1.45fr) minmax(260px, 1.25fr) 42px;
  gap: 10px;
  align-items: end;
}

.krBank .krShopAdminLegend {
  padding: 0 12px 8px;
  color: var(--biel, #b2b2b2);
  font-size: 8px;
  font-weight: bold;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  opacity: .55;
}

.krBank .krShopAdminLegend span:last-child,
.krBank .krShopAdminLegend span:first-child {
  text-align: center;
}

.krBank .krShopAdminGroups {
  display: grid;
  gap: 22px;
}

.krBank section.krShopAdminGroup {
  margin: 0;
  padding: 22px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
}

.krBank .krShopAdminGroup > h3 {
  display: flex;
  gap: 14px;
  align-items: center;
  margin: 0 0 14px;
  text-align: center;
}

.krBank .krShopAdminGroup > h3::before,
.krBank .krShopAdminGroup > h3::after {
  height: 1px;
  flex: 1 1 auto;
  content: "";
  background: var(--borderprofil, #342525);
}

.krBank .krShopAdminList {
  border: 1px solid var(--borderprofil, #342525);
  background: var(--body, #171313);
}

.krBank .krShopAdminItem {
  position: relative;
  padding: 11px 12px;
  border-bottom: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
  transition: background .2s ease, opacity .2s ease;
}

.krBank .krShopAdminItem:last-child {
  border-bottom: 0;
}

.krBank .krShopAdminItem:hover {
  background: var(--tlo, #211a1a);
}

.krBank .krShopAdminItem.is-saving {
  opacity: .68;
}

.krBank .krShopAdminItem.is-dragging {
  opacity: .55;
  outline: 1px dashed var(--kolorprofil, #c4c0bc);
}

.krBank .krShopAdminItem label {
  margin: 0;
}

.krBank .krShopAdminItem label > span:first-child:not(.krShopToggleIcon) {
  display: block;
  margin: 0 0 4px;
  font-size: 8px;
  font-weight: bold;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  opacity: .55;
}

.krBank .krShopAdminItem input:not([type="checkbox"]),
.krBank .krShopAdminItem select,
.krBank .krShopAdminItem textarea {
  min-height: 32px;
  margin: 0;
  padding: 6px 8px;
  font-size: 12px;
}

.krBank .krShopAdminProduct,
.krBank .krShopAdminMeta {
  display: grid;
  gap: 6px;
}

.krBank .krShopAdminProduct {
  grid-template-columns: 1fr;
}

.krBank .krShopAdminMeta {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.krBank .krShopAdminDescription textarea {
  width: 100%;
  height: 76px;
  min-height: 76px;
  resize: vertical;
}

.krBank .krShopAdminMeta select {
  margin-bottom: 0;
}

.krBank .krShopAdminPrice input {
  text-align: center;
}

.krBank .krShopDrag,
.krBank .krShopDragPlaceholder {
  align-self: end;
  justify-self: center;
  margin-bottom: 0;
}

.krBank .krShopDragPlaceholder {
  width: 34px;
  height: 34px;
}

.krBank .krShopVisibility {
  display: grid;
  margin: 0;
  place-items: center;
  cursor: pointer;
}

.krBank .krShopVisibility input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.krBank .krShopToggleIcon {
  display: inline-grid;
  width: 28px;
  height: 28px;
  border: 1px solid var(--borderprofil, #342525);
  place-items: center;
  background: var(--body, #171313);
  color: #9a6b6b;
  font-size: 15px;
  line-height: 1;
  transition: border-color .2s ease, color .2s ease, background .2s ease;
}

.krBank .krShopToggleIcon::before {
  content: "○";
}

.krBank .krShopVisibility input:checked + .krShopToggleIcon {
  border-color: #586b58;
  background: rgba(88, 107, 88, .12);
  color: #a8b8a2;
}

.krBank .krShopVisibility input:checked + .krShopToggleIcon::before {
  content: "◉";
}

.krBank .krShopVisibility input:focus-visible + .krShopToggleIcon {
  outline: 1px solid var(--kolorprofil, #c4c0bc);
  outline-offset: 2px;
}

.krBank .krSrOnly {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

.krBank .krShopSaveCell {
  display: grid;
  place-items: center;
}

.krBank .krShopActionsVertical {
  display: flex;
  align-self: end;
  align-items: center;
  flex-direction: column;
  gap: 5px;
  padding-top: 0;
}

.krBank .krSaveButton,
.krBank .krShopSaveButton {
  display: inline-grid;
  width: 28px;
  min-width: 28px;
  height: 28px;
  min-height: 28px;
  padding: 0;
  place-items: center;
  font-size: 15px;
}

.krBank .krShopSaveStatus {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}

.krBank .krShopDeleteButton {
  display: inline-grid;
  width: 28px;
  min-width: 28px;
  height: 28px;
  min-height: 28px;
  padding: 0;
  place-items: center;
  color: #b98282;
  font-size: 21px;
  font-weight: 300;
  line-height: 1;
}

.krBank .krShopSaveStatus.is-saving {
  color: var(--kolorprofil, #c4c0bc);
  opacity: .9;
}

.krBank .krShopSaveStatus.is-saved {
  color: #a8b8a2;
  opacity: .9;
}

.krBank .krShopSaveStatus.is-error {
  color: #c58d8d;
  opacity: 1;
}

.krBank .krShopCreate {
  margin: 24px 0;
  padding: 28px;
  border: 1px solid var(--borderprofil, #342525);
  background: var(--gradient, #1e1717);
}

.krBank .krShopCreateToggle {
  display: flex;
  width: 100%;
  min-height: 46px;
  padding: 9px 14px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-family: var(--kursywa, Georgia, serif);
  font-size: 16px;
}

.krBank .krShopCreateToggle span {
  font-family: var(--basic, Arial, sans-serif);
  font-size: 20px;
  line-height: 1;
}

.krBank .krShopCreatePanel {
  display: grid;
  gap: 14px;
  margin-top: 14px;
}

.krBank .krShopCreatePanel[hidden] {
  display: none;
}

.krBank .krShopCategoryCreate {
  margin: 12px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.krBank .krShopCategoryCreate .krShopCreateToggle {
  min-height: 38px;
  padding: 7px 12px;
  font-size: 13px;
}

.krBank .krShopAdminCreate {
  border: 1px solid var(--borderprofil, #342525);
}

.krBank .krProductDeleteForm {
  display: none !important;
}

.krBank .krAdminTableScroll {
  width: 100%;
  overflow-x: auto;
}

.krBank .krAdminTableScroll > table {
  margin: 0;
}

.krBank .krManualPoints form {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(150px, 1fr);
  gap: 14px;
  align-items: end;
}

.krBank .krManualPoints label {
  margin: 0;
}

.krBank .krManualPoints select,
.krBank .krManualPoints input,
.krBank .krManualPoints textarea {
  margin-bottom: 0;
}

.krBank .krManualPoints .krPointsReason,
.krBank .krManualPoints p {
  grid-column: 1 / -1;
}

.krBank .krManualPoints button {
  grid-column: 1 / -1;
  justify-self: end;
}

/* Zwarty formularz dodawania aktywności */
.krBank .krActivityCreate {
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
  padding: 24px 28px;
}

.krBank .krActivityCreateGrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px 14px;
  align-items: end;
}

.krBank .krActivityCreateGrid label {
  margin: 0;
}

.krBank .krActivityCreateGrid label > span {
  display: block;
  margin-bottom: 5px;
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  opacity: .62;
}

.krBank .krActivityCreateGrid input:not([type="checkbox"]),
.krBank .krActivityCreateGrid select,
.krBank .krActivityCreateGrid textarea {
  min-height: 36px;
  margin: 0;
  padding: 8px 10px;
  font-size: 12px;
}

.krBank .krActivityCreateGrid textarea {
  height: 82px;
  min-height: 82px;
}

.krBank .krActivityName,
.krBank .krActivityDescription,
.krBank .krActivityForums,
.krBank .krActivityGroups {
  grid-column: span 2;
}

.krBank .krActivityCreateActions {
  display: flex;
  gap: 12px;
  min-height: 36px;
  align-items: center;
  justify-content: flex-end;
}

.krBank .krActivityCreateActions .krActivityActive {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  white-space: nowrap;
}

.krBank .krActivityCreateActions button {
  min-height: 36px;
  padding: 7px 13px;
  font-size: 12px;
}

.krBank .krActivityHint,
.krBank .krClaimIntro {
  max-width: 760px;
  margin: -6px auto 20px;
  line-height: 1.65;
  text-align: center;
  opacity: .76;
}

.krBank .krActivityAdminTable th,
.krBank .krActivityAdminTable td { padding: 10px; vertical-align: middle; }
.krBank .krActivityAdminTable input,
.krBank .krActivityAdminTable select,
.krBank .krActivityAdminTable textarea { min-height: 34px; margin: 0; padding: 7px 9px; font-size: 12px; }
.krBank .krActivityAdminTable textarea { height: 58px; min-height: 58px; margin-top: 7px; }
.krBank .krActivityAdminTable th:first-child,
.krBank .krActivityAdminTable td:first-child { width: 42px; padding-right: 2px; text-align: center; }
.krBank .krActivityDrag { cursor: grab; touch-action: none; }
.krBank .krActivityAdminRow.is-dragging { opacity: .55; }
.krBank .krActivityAdminTable tbody[data-kr-sortable] { position: relative; }
.krBank .krActivityAdminTable tbody[data-kr-sortable].is-saving { pointer-events: none; opacity: .72; }
.krBank .krActivityIdentity { min-width: 220px; }
.krBank .krActivitySettings { min-width: 330px; }
.krBank .krActivitySettings > label { display:grid; grid-template-columns:130px minmax(120px,1fr); gap:8px; align-items:center; margin:6px 0; }
.krBank .krActivityStatus { display:flex; gap:6px; align-items:center; white-space:nowrap; }

.krBank .krActivityAdminList { display:grid; border:1px solid var(--borderprofil,#342525); }
.krBank .krActivityAdminCard { display:grid; grid-template-columns:40px minmax(220px,1fr) minmax(320px,1.25fr) 82px 46px; gap:12px; align-items:end; padding:14px; border-bottom:1px solid var(--borderprofil,#342525); background:transparent; }
.krBank .krActivityAdminCard:last-child { border-bottom:0; }
.krBank .krActivityAdminCard.is-dragging { position:relative; z-index:2; opacity:.55; background:var(--tlo,#211a1a); }
.krBank .krActivityAdminCard input,
.krBank .krActivityAdminCard select,
.krBank .krActivityAdminCard textarea { box-sizing:border-box; width:100%; min-height:34px; margin:0; padding:7px 9px; font-size:12px; }
.krBank .krActivityAdminCard textarea { height:58px; margin-top:7px; }
.krBank .krActivityAdminCard .krActivityPoints { display:grid; gap:6px; margin:0; text-align:center; }
.krBank .krActivityAdminCard .krActivityPoints span { font-size:9px; letter-spacing:1px; text-transform:uppercase; }
.krBank .krActivityAdminCard .krActivityDrag { align-self:end; margin-bottom:0; }
.krBank .krActivitySaveCell { display:grid; align-self:end; place-items:center; }
.krBank .krActivityAdminCard .krActivitySave { width:28px; min-width:28px; height:28px; min-height:28px; padding:0; }
.krBank .krActivityAdminCard.is-saved .krActivitySave { border-color:#586b58; color:#a8b8a2; }
.krBank .krActivityAdminCard.is-error .krActivitySave { border-color:#7b4949; color:#bf8585; }
.krBank .krActivitySaveStatus { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.krBank .krActivityAdminList.is-saving { pointer-events:none; opacity:.72; }
@media(max-width:900px) { .krBank .krActivityAdminCard { grid-template-columns:34px minmax(180px,1fr) minmax(260px,1.2fr) 72px 72px; gap:8px; padding:10px; } }

.krBank .krForumPicker {
  min-width: 0;
  margin: 0 0 8px;
  padding: 10px;
  border: 1px solid var(--borderprofil, #342525);
}
.krBank .krForumPicker > summary { display:flex; justify-content:space-between; gap:10px; cursor:pointer; list-style:none; font-size:10px; font-weight:bold; letter-spacing:1px; text-transform:uppercase; }
.krBank .krForumPicker > summary::-webkit-details-marker { display:none; }
.krBank .krForumPicker > summary small { font-size:9px; font-weight:normal; letter-spacing:0; text-transform:none; opacity:.6; }
.krBank .krForumPickerBody { padding-top:10px; }
.krBank .krForumPickerTools { display:flex; gap:6px; margin-bottom:8px; }
.krBank .krForumPickerTools button { min-height:28px; padding:4px 8px; font-size:9px; }
.krBank .krForumChoices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.krBank .krForumBranch { display:grid; align-content:start; gap:3px; padding:7px; background:rgba(0,0,0,.08); }
.krBank .krForumBranch > strong { margin-bottom:3px; font:normal 13px var(--kursywa,Georgia,serif); }
.krBank .krForumBranch label { display:flex; gap:6px; align-items:center; margin:0; padding-left:calc(var(--kr-depth,0) * 10px); font-size:10px; }
.krBank .krForumBranch input { width:auto; min-height:0; margin:0; }
.krBank .krForumPickerBody > small { display:block; margin-top:7px; font-size:9px; opacity:.58; }
.krBank .krActivityCreateGrid .krForumPicker { height:100%; box-sizing:border-box; }
.krBank .krGroupPicker { min-width:0; margin:0 0 8px; padding:10px; border:1px solid var(--borderprofil,#342525); }
.krBank .krGroupPicker > summary { display:flex; justify-content:space-between; gap:10px; cursor:pointer; list-style:none; font-size:10px; font-weight:bold; letter-spacing:1px; text-transform:uppercase; }
.krBank .krGroupPicker > summary::-webkit-details-marker { display:none; }
.krBank .krGroupPicker > summary small { font-size:9px; font-weight:normal; letter-spacing:0; text-transform:none; opacity:.6; }
.krBank .krGroupChoices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 10px; padding-top:10px; }
.krBank .krGroupChoices label { display:flex; gap:7px; align-items:center; margin:0; font-size:10px; }
.krBank .krGroupChoices input { width:auto; min-height:0; margin:0; }
.krBank .krGroupChoices small { opacity:.55; }
.krBank .krGroupPicker > small { display:block; margin-top:8px; font-size:9px; line-height:1.45; opacity:.6; }
.krBank .krBillingMode,.krBank .krAutomaticEvent { display:grid; gap:5px; margin:0 0 8px; }
.krBank .krBillingMode > span,.krBank .krAutomaticEvent > span { font-size:9px; font-weight:bold; letter-spacing:1px; text-transform:uppercase; opacity:.62; }
.krBank .krBillingControls { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; align-items:end; }
.krBank .krActivityType { grid-column:span 2; }
.krBank .krActivityConfiguration { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; align-content:start; }
.krBank .krShopDraftRemove { color:#bf8585; }
.krBank [hidden] { display:none !important; }
.krBank .krColorRule { align-self:center; margin:0; padding:10px 12px; border:1px solid var(--borderprofil,#342525); font-size:10px; line-height:1.5; opacity:.72; }

@media (max-width: 960px) {
  .krBank .krActivityCreateGrid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 880px) {
  .krBank > .krBankNav {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .krBank > .krBankNav a:nth-child(4n) {
    border-right: 0;
  }

  .krBank .krShopAdminLegend {
    display: none;
  }

  .krBank .krShopAdminItem {
    grid-template-columns: 34px minmax(140px, .7fr) minmax(200px, 1fr) minmax(180px, .9fr) 42px;
  }
}

@media (max-width: 700px) {
  .krBank {
    margin: 18px auto;
    padding: 16px;
  }

  .krBank .krThreadPicker {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .krBank .krThreadPicker label {
    display: grid;
    gap: 7px;
  }

  .krBank .krThreadPicker label > span { font-size: 11px; }
  .krBank .krThreadPicker button { width: 100%; font-size: 11px; }

  .krBank .krActivityCreateGrid {
    grid-template-columns: 1fr;
  }

  .krBank .krActivityName,
  .krBank .krActivityDescription,
  .krBank .krActivityForums,
  .krBank .krActivityGroups {
    grid-column: auto;
  }

  .krBank .krActivityCreateActions {
    justify-content: space-between;
  }

  .krBank .krManualPoints form {
    grid-template-columns: 1fr;
  }

  .krBank .krManualPoints .krPointsReason,
  .krBank .krManualPoints p,
  .krBank .krManualPoints button {
    grid-column: 1;
  }

  .krBank .krShopCart > footer {
    align-items: stretch;
    flex-direction: column;
  }

  .krBank > nav {
    justify-content: center;
  }

  .krBank > .krBankNav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 12px 8px;
  }

  .krBank > .krBankNav a,
  .krBank > .krBankNav a:nth-child(4n) {
    min-height: 82px;
    border-right: 1px solid rgba(99, 71, 71, .24);
  }

  .krBank > .krBankNav a:nth-child(2n) {
    border-right: 0;
  }

  .krBank .krInventoryRegistry {
    padding: 2px 12px;
  }

  .krBank .krInventoryRow {
    grid-template-columns: 12px minmax(0, 1fr) auto;
    gap: 8px 12px;
  }

  .krBank .krInventoryRow time {
    grid-column: 3;
    grid-row: 1;
  }

  .krBank .krInventoryActions {
    grid-column: 2 / -1;
    justify-content: flex-start;
  }

  .krBank .krPlayerSort {
    align-items: stretch;
    justify-content: stretch;
  }

  .krBank .krPlayerSort label {
    width: 100%;
  }

  .krBank .krPlayerSort select {
    width: 100%;
    min-width: 0;
  }

  .krBank-grid,
  .krBank-players,
  .krBank-shop,
  .krBank-activities,
  .krBank-inventory-grid,
  .krBank .krPlayerGrid {
    grid-template-columns: 1fr;
  }

  .krBank .krPlayerScroll {
    max-height: 380px;
  }

  .krBank .krPlayerHonorsScroll {
    padding: 12px;
  }

  .krBank .krShopIntro,
  .krBank .krShopManagerHeader {
    align-items: flex-start;
    flex-direction: column;
  }

  .krBank .krShopIntro { align-items: center; }

  .krBank .krShopManagerHeader p {
    text-align: left;
  }

  .krBank .krShopWallet {
    width: 100%;
  }

  .krBank .krShopColumnHead {
    display: none;
  }

  .krBank .krShopProduct {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 14px;
    align-items: start;
  }

  .krBank .krShopProduct > p {
    grid-column: 1 / -1;
  }

  .krBank .krShopProduct > footer {
    justify-content: flex-end;
  }

  .krBank .krShopAdminItem {
    grid-template-columns: 34px 1fr 42px;
    align-items: end;
  }

  .krBank .krShopAdminProduct,
  .krBank .krShopAdminDescription,
  .krBank .krShopAdminMeta {
    grid-column: 2 / 3;
  }

  .krBank .krShopActionsVertical { grid-column:3; grid-row:1 / span 3; }

  .krBank section,
  .krBank .krBank-panel,
  .krBank .krBank-card,
  .krBank .krBank-player,
  .krBank .krBank-item,
  .krBank .krBank-activity,
  .krBank .krBank-claim,
  .krBank .krBank-inventory {
    padding: 18px;
  }

  .krBank table,
  .krBank thead,
  .krBank tbody,
  .krBank th,
  .krBank td,
  .krBank tr {
    display: block;
    width: 100%;
  }

  .krBank thead {
    display: none;
  }

  .krBank tr {
    border-bottom: 1px solid var(--borderprofil, #342525);
  }

  .krBank td {
    border-width: 0 0 1px;
  }
}

/* ===== Karty zarządzania i rozliczeń 1.10.42 ===== */

.krBank .krShopAdminLegend { display: none; }
.krBank .krShopAdminList,
.krBank .krActivityAdminList {
  display: grid;
  gap: 12px;
  border: 0;
  background: transparent;
}
.krBank .krShopAdminItem,
.krBank .krActivityAdminCard {
  position: relative;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--borderprofil, #342525);
  border-radius: 10px;
  background: rgba(14, 11, 9, .25);
  transition: border-color .18s ease, background .18s ease, opacity .18s ease;
}
.krBank .krShopAdminItem:last-child,
.krBank .krActivityAdminCard:last-child { border-bottom: 1px solid var(--borderprofil, #342525); }
.krBank .krShopAdminItem:hover,
.krBank .krActivityAdminCard:hover { background: rgba(99, 71, 71, .07); }
.krBank .krShopAdminItem.is-dragging,
.krBank .krActivityAdminCard.is-dragging {
  z-index: 3;
  border-color: var(--kolorprofil, #c4c0bc);
  background: var(--tlo, #211a1a);
}
.krBank .krShopCardBody,
.krBank .krActivityCardBody {
  display: grid;
  gap: 10px;
  min-width: 0;
}
.krBank .krShopCardTop {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(130px, .42fr) 32px 32px;
  gap: 8px;
  align-items: end;
}
.krBank .krShopAdminItem label,
.krBank .krActivityAdminCard label { min-width: 0; margin: 0; }
.krBank .krShopAdminItem label > span:first-child:not(.krShopToggleIcon),
.krBank .krActivityIdentity > span,
.krBank .krActivityDescription > span,
.krBank .krActivityPoints > span {
  display: block;
  margin: 0 0 5px;
  color: var(--biel, #b2b2b2);
  font-size: 8px;
  font-weight: bold;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  opacity: .58;
}
.krBank .krShopAdminItem input:not([type="checkbox"]),
.krBank .krShopAdminItem select,
.krBank .krShopAdminItem textarea,
.krBank .krActivityAdminCard input,
.krBank .krActivityAdminCard select,
.krBank .krActivityAdminCard textarea {
  box-sizing: border-box;
  width: 100%;
  min-height: 34px;
  margin: 0;
  padding: 7px 9px;
  border-radius: 7px;
  font-size: 12px;
}
.krBank .krPriceInput {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}
.krBank .krPriceInput small {
  font-size: 9px;
  font-weight: bold;
  letter-spacing: 1px;
  opacity: .6;
}
.krBank .krShopAdminDescription,
.krBank .krActivityIdentity,
.krBank .krActivityDescription { display: grid; gap: 0; min-width: 0; }
.krBank .krShopAdminDescription textarea,
.krBank .krActivityAdminCard .krActivityDescription textarea {
  width: 100%;
  height: 72px;
  min-height: 72px;
  margin: 0;
  padding: 10px;
  border-style: dashed;
  resize: vertical;
}
.krBank .krShopAdminMeta {
  display: grid;
  grid-template-columns: minmax(135px, .9fr) minmax(115px, .7fr) minmax(190px, 1.25fr) minmax(80px, .5fr) 40px;
  gap: 8px;
  align-items: end;
}
.krBank .krShopDrag,
.krBank .krShopDragPlaceholder,
.krBank .krActivityAdminCard .krActivityDrag {
  align-self: start;
  justify-self: center;
  margin: 22px 0 0;
}
.krBank .krShopCardTop > .krIconButton,
.krBank .krShopCardTop > .krShopVisibility { align-self: end; }
.krBank .krShopCardTop > .krIconButton,
.krBank .krShopToggleIcon,
.krBank .krShopSaveCell .krIconButton,
.krBank .krActivitySaveCell .krIconButton {
  width: 32px;
  min-width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border-radius: 6px;
}
.krBank .krShopSaveCell,
.krBank .krActivitySaveCell { display: grid; align-self: end; place-items: center; }

.krBank .krActivityCardBottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 88px 40px;
  gap: 8px;
  align-items: end;
}
.krBank .krActivityCardBottom .krActivitySettings {
  display: grid;
  grid-template-columns: minmax(220px, .85fr) minmax(260px, 1.15fr);
  gap: 8px;
  min-width: 0;
  align-items: end;
}
.krBank .krActivityCardBottom .krBillingControls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
}
.krBank .krActivityCardBottom .krBillingMode,
.krBank .krActivityCardBottom .krAutomaticEvent,
.krBank .krActivityCardBottom .krForumPicker { margin: 0; }
.krBank .krActivityCardBottom .krForumPicker {
  min-height: 38px;
  padding: 11px 10px;
  border-radius: 7px;
}
.krBank .krActivityAdminCard .krActivityPoints { display: grid; gap: 0; text-align: left; }

.krBank .krClaimWorkspace { max-width: 980px; margin-right: auto; margin-left: auto; }
.krBank .krClaimForm { display: grid; gap: 20px; }
.krBank .krClaimForm > h3 {
  margin: 2px 0 -6px;
  color: var(--kolorprofil, #c4c0bc);
  font: normal 19px/1.35 var(--kursywa, Georgia, serif);
}
.krBank .krClaimActivityGrid,
.krBank .krClaimThread {
  margin: 0;
  padding: 10px;
  border: 1px solid var(--borderprofil, #342525);
  border-radius: 10px;
  background: rgba(14, 11, 9, .22);
}
.krBank .krActivityChoiceCard {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 0 0 9px;
  padding: 14px;
  border: 1px solid var(--borderprofil, #342525);
  border-radius: 8px;
  background: var(--body, #171313);
}
.krBank .krActivityChoiceCard:last-child { margin-bottom: 0; border-bottom: 1px solid var(--borderprofil, #342525); }
.krBank .krActivityChoiceCard:has(input:checked),
.krBank .krPostChoice:has(input:checked) {
  border-color: var(--kolorprofil, #c4c0bc);
  background: rgba(99, 71, 71, .13);
}
.krBank .krActivityChoiceCard > span { min-width: 0; font-weight: bold; }
.krBank .krActivityChoiceCard > strong { color: var(--kolorprofil, #c4c0bc); white-space: nowrap; }
.krBank .krActivityChoiceCard small { font-weight: normal; opacity: .62; }
.krBank .krClaimThreads { display: grid; gap: 18px; }
.krBank .krClaimThread > legend {
  display: flex;
  width: calc(100% - 18px);
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 0 9px;
}
.krBank .krClaimThread > legend a {
  display: grid;
  width: 28px;
  height: 28px;
  border: 1px solid var(--borderprofil, #342525);
  color: #bf8585;
  font: 20px/1 var(--basic, Arial, sans-serif);
  text-decoration: none;
  place-items: center;
}
.krBank .krPostPageList { display: grid; gap: 10px; }
.krBank .krPostChoice {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--borderprofil, #342525);
  border-radius: 8px;
  background: var(--body, #171313);
}
.krBank .krPostChoice:last-of-type { border-bottom: 1px solid var(--borderprofil, #342525); }
.krBank .krPostChoiceText { min-width: 0; }
.krBank .krPostChoiceText .krPostChoiceHead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 6px;
}
.krBank .krPostChoiceText .krPostChoiceHead small { margin: 0; white-space: nowrap; opacity: .58; }
.krBank .krPostChoiceText > span:last-child { line-height: 1.55; opacity: .76; }
.krBank .krPostPager {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding-top: 4px;
}
.krBank .krPostPager button {
  display: grid;
  width: 32px;
  min-width: 32px;
  min-height: 32px;
  padding: 0;
  place-items: center;
}
.krBank .krPostPager span { min-width: 52px; font-size: 10px; letter-spacing: 1px; text-align: center; }
.krBank .krClaimComment { display: grid; gap: 6px; }
.krBank .krClaimComment textarea { min-height: 86px; resize: vertical; }
.krBank .krClaimSubmit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding-top: 15px;
  border-top: 1px solid var(--borderprofil, #342525);
}
.krBank .krClaimSubmit > span { max-width: 620px; font-size: 11px; line-height: 1.55; opacity: .66; }
.krBank .krClaimSubmit button { flex: 0 0 auto; }
.krBank .krClaimHonorSelect { display: grid; gap: 6px; }

.krBank .krShopManager,
.krBank .krActivityManager,
.krBank .krActivityCreate {
  width: 100%;
  max-width: none;
}
.krBank .krActivityDragPlaceholder {
  display: block;
  width: 32px;
  height: 32px;
  align-self: start;
  justify-self: center;
  margin-top: 22px;
}
.krBank .krActivityAdminCreate {
  width: 100%;
  padding: 12px;
}
.krBank .krActivityAdminCreate .krActivityCreateButton {
  width: 32px;
  min-width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border-radius: 6px;
  font-size: 18px;
}

@media (max-width: 900px) {
  .krBank .krShopAdminItem,
  .krBank .krActivityAdminCard { grid-template-columns: 28px minmax(0, 1fr); padding: 14px; }
  .krBank .krShopCardTop { grid-template-columns: minmax(160px, 1fr) minmax(110px, .5fr) 32px 32px; }
  .krBank .krShopAdminMeta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .krBank .krShopSaveCell { justify-self: end; }
  .krBank .krActivityCardBottom .krActivitySettings { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .krBank .krShopAdminItem,
  .krBank .krActivityAdminCard { grid-template-columns: 1fr; }
  .krBank .krShopDrag,
  .krBank .krShopDragPlaceholder,
  .krBank .krActivityAdminCard .krActivityDrag { margin: 0; justify-self: start; }
  .krBank .krActivityDragPlaceholder { display: none; }
  .krBank .krShopCardTop { grid-template-columns: minmax(0, 1fr) 72px 32px 32px; }
  .krBank .krShopAdminMeta,
  .krBank .krActivityCardBottom { grid-template-columns: 1fr; }
  .krBank .krActivityCardBottom .krActivitySettings,
  .krBank .krActivityCardBottom .krBillingControls { grid-template-columns: 1fr; }
  .krBank .krActivitySaveCell,
  .krBank .krShopSaveCell { justify-self: end; }
  .krBank .krClaimSubmit { align-items: stretch; flex-direction: column; }
  .krBank .krClaimSubmit button { width: 100%; }
  .krBank .krPostChoiceText .krPostChoiceHead { align-items: flex-start; flex-direction: column; gap: 2px; }
}

/* ===== Honory ===== */

/* KingsRoad Honory 2.0. Colors inherit the active forum theme. */
.krPage { box-sizing:border-box; max-width:1010px; margin:30px auto; padding:28px; color:var(--biel,#b2b2b2); font-family:var(--basic,Arial,sans-serif); }
.krPage *, .krCollection * { box-sizing:border-box; }
.krPageHeader { display:block; margin:28px 0 0; padding:0; text-align:center; }
.krHonorsBank > .krBankNav a.active { border-color:rgba(99,71,71,.24); background:transparent; }
.krHonorsBank > .krBankNav a.active .krNavIcon { border-color:var(--kolorprofil,#c4c0bc); background:transparent; color:var(--kolorprofil,#c4c0bc); }
.krHonorsTitle { margin:0 !important; text-align:center; }
.krHonorsBank .krLevel { padding:0; border:0; background:none; }
.krHonorsBank .krHonorCatalogPanel .krLevel {
  margin:24px 0;
  padding:28px;
  border:1px solid var(--borderprofil,#342525);
  background:var(--gradient,#1e1717);
}
.krHonorsBank .krHonorCatalogPanel .krLevel > h2 {
  margin:0 0 18px;
  padding:0;
  text-align:center;
}
.krHonorsBank .krHonorCatalogPanel .krLevelBody {
  width:100%;
  min-height:140px;
  padding:18px;
  border:1px solid var(--borderprofil,#342525);
  background:var(--tlo,#211a1a);
}
.krHonorsBank .krHonorCatalogPanel .krLevelBody .krBadgeGrid { margin-top:0; }
.krHonorsBank .krHonorCatalogPanel .is-table-view .krLevelBody .krBadgeGrid { border:0; }
.krHonorsBank .krHonorCatalogPanel .krLevelBody > .krEmpty {
  margin:0;
  min-height:102px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.krPage h1,.krPage h2,.krPage h3 { color:var(--kolorprofil,#c4c0bc); border:0; font-family:var(--kursywa,Georgia,serif); font-weight:normal; }
.krPage h1 { display:table; margin:0 auto; padding:0 0 4px; border-bottom:2px solid var(--borderprofil,#342525); color:var(--header,var(--kolorprofil,#c4c0bc)); font-family:var(--medieval,var(--kursywa,Georgia,serif)); font-size:28px; font-weight:300; letter-spacing:6px; line-height:1.2; text-align:center; text-transform:lowercase; }
.krHonorsBank > h1 { display:block; margin:0; padding:0 0 13px; border-bottom:1px solid var(--borderprofil,#342525); color:var(--kolorprofil,#c4c0bc); font-family:var(--kursywa,Georgia,serif); font-size:23px; font-weight:normal; letter-spacing:0; line-height:1.2; text-align:center; text-transform:none; }
.krPage h2 { font-size:23px; margin:0 0 18px; }
.krPage h3 { font-size:20px; margin-top:24px; }
.krPanel { box-sizing:border-box; padding:28px; margin:24px 0; border:1px solid var(--borderprofil,#342525); background:var(--gradient,#1e1717); color:var(--biel,#b2b2b2); }
.krHonorsBank .krHonorCatalogPanel { margin-top:22px; padding:0; border:0 !important; background:none; box-shadow:none; }
.krHonorPanelHeader { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:20px; margin:0 0 28px; padding:0 0 18px; border-bottom:1px solid var(--borderprofil,#342525); }
.krHonorPanelHeader .krHonorsTitle { display:block; grid-column:2; padding:0; border:0; color:var(--kolorprofil,#c4c0bc); font-family:var(--kursywa,Georgia,serif); font-size:23px; font-weight:normal; letter-spacing:0; line-height:1.2; text-align:center; text-transform:none; }
.krHonorPanelTools { display:flex; grid-column:3; align-items:center; justify-content:flex-end; margin:0; padding:0; }
.krHonorPanelHeaderToolsOnly { display:flex; justify-content:flex-end; }
.krHonorPanelHeaderToolsOnly:empty { display:none; }
.krHonorPanelHeaderToolsOnly .krHonorPanelTools { width:100%; justify-content:flex-end; }
.krPage p { font-size:14px; line-height:1.7; }
.krPanelChoices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.krActions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.krHeaderActions { justify-content:flex-end; padding:14px 0 0; margin-bottom:22px; }
.krHonorPageActions { justify-content:center; padding:22px 0 0; margin:28px 0 0; border-top:1px solid var(--borderprofil,#342525); }
.krPageHeader + .krPanel,.krPageHeader + .krPanelChoices { margin-top:22px; }
.krPage .krButton { display: inline-block !important;
  width: auto !important;
  padding: 10px 12px;
  border: 1px solid var(--borderprofil);
  background: var(--gradient);
  color: var(--biel);
  font-family: var(--kursywa);
  font-size: 11px;
  letter-spacing: 1.5px;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  text-transform: lowercase;
  border-radius: 0px;
}
.krPage .krButton:hover { filter:brightness(1.2); }
.krPage .krButton:focus-visible,.krBadge:focus-visible,.krPage button:focus-visible { outline:2px solid #dcb183; outline-offset:3px; }
.krPage .krDanger { color:#f1b4b4; }
.krPage .krHonorDeleteForm { margin:0; }
.krPage [hidden] { display:none !important; }
.krForm { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.krForm label,.krSearch label { display:flex; flex-direction:column; gap:7px; font-size:14px; text-align:left; }
.krForm input,.krForm textarea,.krForm select,.krSearch input,.krSearch select { box-sizing:border-box; min-width:0; width:100%; padding:10px; min-height:42px; border:1px solid var(--borderprofil,#634747); background:var(--tlo,#211a1a); color:var(--biel,#eee); font:14px/1.4 var(--basic,Arial,sans-serif); }
.krForm textarea { resize:vertical; }
.krFull { grid-column:1/-1; }
.krForm small { font-size:12px; line-height:1.5; opacity:.8; }
.krSearch { display:flex; flex-wrap:wrap; gap:12px; align-items:end; }
.krSearch label { flex:1 1 240px; }
.krSearchResults { list-style:none; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
.krSearchStatus { flex:1 0 100%; min-height:20px; margin:0; }
.krCurrentImage { display:flex; align-items:start; gap:20px; margin-bottom:22px; }
.krDetailPanel {
  margin:24px 0;
  padding:28px;
  border:1px solid var(--borderprofil,#342525);
  background:var(--gradient,#1e1717);
  text-align:center;
}
.krDetailBadge { display:flex; justify-content:center; margin:4px auto 28px; }
.krDetailBadge .krBadgeFrame { width:104px !important; min-width:104px; max-width:104px; height:130px !important; min-height:130px; max-height:130px; flex-basis:104px !important; }
.krDetailBadge .krBadgeFrame img { width:72px !important; min-width:72px; max-width:72px; height:72px !important; min-height:72px; max-height:72px; }
.krDetailTable { margin:0; border:1px solid var(--borderprofil,#634747); text-align:left; }
.krDetailTable>div { display:grid; grid-template-columns:minmax(120px,25%) minmax(0,1fr); border-bottom:1px solid var(--borderprofil,#634747); }
.krDetailTable>div:last-child { border-bottom:0; }
.krDetailTable dt,.krDetailTable dd { margin:0; padding:14px 16px; overflow-wrap:anywhere; }
.krDetailTable dt { color:var(--kolorprofil); text-transform: uppercase;   font-family: var(--fontp); border-right:1px solid var(--borderprofil); }
.krDelete { margin-top:26px; border-top:1px solid var(--borderprofil,#634747); padding-top:20px; }
.krError { border:1px solid #ae5555; padding:16px; color:#edb0b0; margin:18px 0; }
.krCollection { width:100%; container-type:inline-size; }
.krLevel { margin:26px 0; }
.krLevel h2 { font:400 23px/1.4 var(--kursywa,Georgia,serif); color:var(--kolorprofil,#c4c0bc); }
.krCollection .krBadgeGrid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px 12px; list-style:none; margin:18px 0 0; padding:0; }
.krBadgeGrid li { min-width:0; position:relative; }
.krCollection a.krBadge { position:relative; display:flex; align-items:center; justify-content:flex-start; flex-direction:column; gap:8px; padding:8px 0; text-align:center; background:none; border:0; text-decoration:none; color:var(--biel,#ddd); }
.krBadgeName { display:block; min-height:34px;   font-family: var(--kursywa); font-size: 13px;letter-spacing: 2px;
overflow-wrap:anywhere; }
.krBadgePoints { display:none; }
.krBadgeTooltip { position:absolute; z-index:30; left:50%; bottom:calc(100% + 8px); box-sizing:border-box; display:flex; align-items:center; justify-content:center; width:190px; height:92px; padding:10px 12px; border:1px solid var(--borderprofil); background:#1c1517f5; color:var(--biel);font-size:13px; font-family: var(--basic); text-align:center; opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%,6px); transition:opacity .16s ease,transform .16s ease; overflow:hidden; overflow-wrap:anywhere; }
.krBadgeTooltip::after { content:""; position:absolute; left:50%; top:100%; transform:translateX(-50%); border:7px solid transparent; border-top-color:var(--borderprofil,#634747); }
.krBadge:hover .krBadgeTooltip,.krBadge:focus-visible .krBadgeTooltip { opacity:1; visibility:visible; transform:translate(-50%,0); }
.krBadge.krTooltipFloating .krBadgeTooltip { opacity:0 !important; visibility:hidden !important; }
.krBadgeFloatingTooltip { position:fixed; z-index:100000; box-sizing:border-box; display:flex; width:220px; max-width:calc(100vw - 24px); min-height:0; padding:12px 14px; align-items:center; justify-content:center; overflow:visible; transform:translate(-50%,-100%); border:1px solid var(--borderprofil,#634747); background:#1c1517f5; color:var(--biel,#ddd); font:13px/1.45 var(--basic,Arial,sans-serif); text-align:center; overflow-wrap:anywhere; pointer-events:none; }
.krBadgeFloatingTooltip::after { position:absolute; top:100%; left:50%; content:""; transform:translateX(-50%); border:7px solid transparent; border-top-color:var(--borderprofil,#634747); }
.krBadgeFloatingTooltip.is-below { transform:translate(-50%,0); }
.krBadgeFloatingTooltip.is-below::after { top:auto; bottom:100%; border-top-color:transparent; border-bottom-color:var(--borderprofil,#634747); }
.krBadgeFrame { position:relative; isolation:isolate; box-sizing:border-box; display:flex; align-items:center; justify-content:center; width:80px !important; min-width:80px; max-width:80px; height:104px !important; min-height:104px; max-height:104px; flex:0 0 80px !important; overflow:hidden; background:var(--borderprofil,#514849); border:0; border-radius:0; box-shadow:none; clip-path:polygon(0 0,100% 0,100% 78%,50% 100%,0 78%); transition:filter .18s ease,transform .18s ease; }
.krBadgeFrame::before { content:""; position:absolute; z-index:0; inset:2px; background:var(--odznaka,var(--gradient,#26191c)); clip-path:polygon(0 0,100% 0,100% 77.5%,50% 100%,0 77.5%); }
.krBadgeFrame img { position:relative; z-index:1; box-sizing:border-box; display:block; width:56px !important; min-width:56px; max-width:56px; height:56px !important; min-height:56px; max-height:56px; padding:0 !important; margin:-7px 0 0 !important; border:0; object-fit:contain; object-position:center; filter:var(--kr-icon-filter,brightness(0) invert(1)); opacity:.72; }
.krBadge:hover .krBadgeFrame,.krBadge:focus .krBadgeFrame { filter:brightness(1.12); transform:translateY(-2px); }
.krCollection.is-table-view .krBadgeGrid { display:block; margin-top:12px; border:1px solid var(--borderprofil); }
.krCollection.is-table-view .krBadgeGrid>li { border-bottom:1px solid var(--borderprofil,#634747); }
.krCollection.is-table-view .krBadgeGrid>li:last-child { border-bottom:0; }
.krCollection.is-table-view a.krBadge { display:grid; grid-template-columns:80px minmax(130px,.7fr) minmax(220px,2fr) 72px; gap:16px; align-items:center; min-height:130px; padding:12px 16px; text-align:left; }
.krCollection.is-table-view .krBadgeFrame { width:80px !important; min-width:80px; max-width:80px; height:104px !important; min-height:104px; max-height:104px; flex-basis:80px !important; }
.krCollection.is-table-view .krBadgeFrame img { width:56px !important; min-width:56px; max-width:56px; height:56px !important; min-height:56px; max-height:56px; }
.krCollection.is-table-view a.krBadge:hover,.krCollection.is-table-view a.krBadge:focus-visible { background:var(--body); }
.krCollection.is-table-view .krBadgeName { min-height:0;font-family: var(--kursywa);
  font-size: 13px;
  letter-spacing: 2px;}
.krCollection.is-table-view .krBadgeTooltip { position:static; display:block; width:auto; height:auto; padding:0; border:0; color:var(--biel);font-size:13px; font-family: var(--basic); text-align:center; background:none; text-align:left; opacity:.82; visibility:visible; pointer-events:none; transform:none; transition:none; overflow:visible; }
.krCollection.is-table-view .krBadgeTooltip::after { display:none; }
.krCollection.is-table-view .krBadgePoints { display:block; color: var(--kolorpost);   font-family: var(--kursywa);padding: 20px;font-size:13px; text-align:right; white-space:nowrap; }
.krEmpty { grid-column:1/-1; opacity:.8; }
.krSortable { display:grid; gap:10px; padding:0; margin:12px 0; list-style:none; }
.krSortable>li { display:flex; align-items:center; gap:12px; padding:12px; border:1px solid var(--borderprofil,#634747); background:var(--gradient,#24191c); }
.krSortName { flex:1; min-width:0; overflow-wrap:anywhere; font-size:14px; }
.krDrag { flex-shrink:0; touch-action:none; cursor:grab; user-select:none; padding:10px; background:none; color:#c7916a; border:1px solid var(--borderprofil,#634747); font-size:24px; line-height:1; }
.krSortable>li.is-dragging { opacity:.55; outline:2px dashed #c7916a; }
.krSortable.is-saving { opacity:.65; pointer-events:none; }
.krSortStatus { min-height:24px; margin:0; }
.krSortStatus.is-error { color:#efaaaa; }
.krHonorManagePage { display:grid; gap:24px; }
.krHonorManagePage > .krPanel { margin:0; }
.krHonorManageIntro { display:flex; gap:24px; align-items:center; justify-content:flex-end; margin:0; padding:0; border:0; background:transparent; }
.krHonorManageIntro > div:first-child { min-width:0; }
.krHonorManageIntro h2,.krHonorManageIntro p { margin:0; text-align:left; }
.krHonorManageIntro p { margin-top:7px; opacity:.72; }
.krHonorManageIntro .krActions { width:auto; flex:0 0 auto; justify-content:flex-end; }
.krHonorManageIntro .krActions .krButton { width:auto; min-height:42px; box-sizing:border-box; padding:9px 15px; font-family:var(--kursywa,Georgia,serif); font-size:13px; }
.krHonorManageIntro .krActions .krButton,.krHonorManageIntro .krActions .krButton:hover { background:transparent !important; }
.krHonorManageIntro .krActions .krButton::before { margin-right:9px; content:"+"; font-family:var(--basic,Arial,sans-serif); font-size:17px; }
.krHonorManageLevel > h2 { margin-bottom:18px; padding-bottom:14px; border-bottom:1px solid var(--borderprofil,#342525); }
.krHonorManageTable { border:1px solid var(--borderprofil,#342525); background:var(--body,#171313); }
.krHonorManageHead,.krHonorManageList>li { display:grid; grid-template-columns:42px 62px minmax(150px,1fr) 78px minmax(180px,auto); gap:12px; align-items:center; }
.krHonorManageHead { padding:9px 12px; border-bottom:1px solid var(--borderprofil,#342525); color:var(--biel,#b2b2b2); font-size:8px; font-weight:bold; letter-spacing:1.5px; text-transform:uppercase; opacity:.58; }
.krHonorManageList { gap:0; margin:0; }
.krHonorManageList>li { min-height:88px; padding:10px 12px; border:0; border-bottom:1px solid var(--borderprofil,#342525); background:var(--gradient,#24191c); }
.krHonorManageList>li:last-child { border-bottom:0; }
.krHonorManageList .krDrag { width:34px; min-width:34px; min-height:34px; padding:4px; font-size:19px; }
.krHonorManageList .krBadgeFrame { width:52px !important; min-width:52px; max-width:52px; height:68px !important; min-height:68px; max-height:68px; flex-basis:52px !important; }
.krHonorManageList .krBadgeFrame img { width:36px !important; min-width:36px; max-width:36px; height:36px !important; min-height:36px; max-height:36px; margin:-4px 0 0 !important; }
.krHonorManageList .krSortName { font-family:var(--kursywa,Georgia,serif); font-size:16px; }
.krHonorManagePoints { color:var(--kolorprofil,#c4c0bc); font-family:var(--kursywa,Georgia,serif); text-align:right; white-space:nowrap; }
.krHonorManageActions { display:grid; grid-template-columns:repeat(2,minmax(82px,1fr)); gap:7px; align-items:stretch; justify-content:end; }
.krHonorManageActions > a,.krHonorManageActions > form,.krHonorManageActions form button { width:100%; box-sizing:border-box; }
.krHonorManageActions .krButton { min-height:34px; padding:7px 10px; font-size:11px; }
.krSearch[data-kr-player-search] { display:grid; grid-template-columns:auto minmax(240px,1fr) auto; gap:12px; width:100%; max-width:820px; margin:0 auto; align-items:center; }
.krSearch[data-kr-player-search] label { display:contents; margin:0; }
.krSearch[data-kr-player-search] label > span { align-self:center; white-space:nowrap; }
.krSearch[data-kr-player-search] input[type="search"] { height:42px; min-height:42px; margin:0; }
.krSearch[data-kr-player-search] > .krButton { align-self:center; display:grid; height:42px; min-height:42px; margin:0; padding:8px 14px; place-items:center; }
.krSearch[data-kr-player-search] .krSearchStatus { display:none; }
.krBank .krRejectedNote { margin:18px 0; padding:12px 16px; border-left:2px solid #8b5555; background:rgba(99,71,71,.12); font-size:12px; line-height:1.6; }
.krHonorManageTable .krSortStatus { min-height:0; margin:0; }
@container (max-width:470px) { .krCollection .krBadgeGrid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px 6px; } }
@container (max-width:355px) { .krCollection .krBadgeGrid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@container (max-width:265px) { .krCollection .krBadgeGrid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .krPage { padding:16px; } .krPanel { padding:18px; } .krPanelChoices,.krForm { grid-template-columns:1fr; } .krHonorPanelHeader { grid-template-columns:1fr; } .krHonorPanelTools { width:100%; grid-column:1; justify-content:center; } .krHonorPanelHeader .krHonorsTitle { grid-column:1; font-size:22px; letter-spacing:0; } .krSortable>li { flex-wrap:wrap; } .krSortName { flex-basis:calc(100% - 140px); } .krPage h1 { font-size:22px; letter-spacing:0; } .krDetailTable>div { grid-template-columns:1fr; } .krDetailTable dt { border-right:0; border-bottom:1px solid var(--borderprofil,#634747); } .krCollection.is-table-view a.krBadge { grid-template-columns:80px minmax(0,1fr); gap:8px 14px; } .krCollection.is-table-view .krBadgeFrame { grid-row:1/4; } .krCollection.is-table-view .krBadgeTooltip,.krCollection.is-table-view .krBadgePoints { grid-column:2; text-align:left; } }
@media(max-width:700px) { .krHonorManageIntro { align-items:stretch; flex-direction:column; } .krHonorManageIntro h2,.krHonorManageIntro p { text-align:center; } .krHonorManageIntro .krActions { justify-content:center; } .krHonorManageHead { display:none; } .krHonorManageList>li { display:grid; grid-template-columns:36px 52px minmax(0,1fr); gap:10px; } .krHonorManageList .krDrag { grid-column:1; grid-row:1 / span 2; } .krHonorManageList .krBadgeFrame { grid-column:2; grid-row:1 / span 2; } .krHonorManageList .krSortName { grid-column:3; } .krHonorManagePoints { grid-column:3; text-align:left; } .krHonorManageActions { grid-column:1 / -1; justify-content:flex-end; } }
@media(max-width:700px) { .krHonorsBank .krHonorCatalogPanel .krLevel { padding:18px; } .krHonorsBank .krHonorCatalogPanel .krLevelBody { padding:14px; } .krDetailPanel { padding:18px; } }
@media(max-width:700px) { .krStatsPanel { padding:18px; } .krStat { grid-template-columns:minmax(90px,.8fr) minmax(90px,2fr) minmax(56px,auto); gap:10px; } }
@media(max-width:700px) { .krSearch[data-kr-player-search] { grid-template-columns:1fr; } .krSearch[data-kr-player-search] label > span { margin-bottom:-5px; } .krSearch[data-kr-player-search] > .krButton { width:100% !important; } }
@media(max-width:420px) { .krStatsGrid { padding:12px; } .krStat { grid-template-columns:1fr auto; } .krStatTrack { grid-column:1 / -1; grid-row:2; } }
