/* Dva řádky, bez teček, zarovnání na baseline */
.price-box { display: grid; gap: .125rem 0; }
.price-row {
  display: flex;
  align-items: baseline;           /* baseline ↔ baseline */
  justify-content: space-between;  /* label vlevo, částka vpravo */
}
.price-left  { flex: 1 1 auto; min-width: 0; }
.price-right { flex: 0 0 auto; text-align: right; white-space: nowrap; }

/* (A) AKČNÍ CENA ZA KUS – červeně, výraznější */
.price-row--promo .price-label-promo { color: #f74a68; font-weight: 500; font-size: 18px; }
.price-row--promo .price-unit-promo  { color: #f74a68; font-weight: 500; font-size: 18px; }

/* (B) JEDNOTKOVÁ CENA – šedě, menší */
.price-row--unit .price-label-unit { color: #6c757d; font-size: 18px; font-weight: 300;}
.price-row--unit .price-unit       { color: #6c757d; font-size: 18px; font-weight: 300;}

/* volitelně: „běžnou“ přeškrtnout, pokud máš od shopu původní cenu
.price-row--unit .price-unit.is-was { text-decoration: line-through; opacity: .7; }
*/

/* (C) CELKEM – velké, tmavé (už máš fw-bold fs-1 na pravé části) */
.price-row--total .price-label-top { color: #222; font-weight: 300; font-size: 18px;}

.price-total-right {font-weight: 400; font-size: 18px; }


/* Zvýraznění ceny při stickeru */
.price-box.sticker-active #price-total { color: #f74a68; }
.price-box.sticker-active #price-unit  { color: #a44; }

/* (i) ikonka – držet baseline, bez posunu */
.price-info-btn {
  margin-left: .4rem;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  line-height: 1;
  vertical-align: baseline;
}
.price-info-icon {
  width: 20px; height: 20px;
  display: inline-block;
  vertical-align: text-bottom; /* sedne ke slovu „Cena celkem“ */
}
.price-info-btn:hover .price-info-icon { filter: brightness(0.85); }

/* Poznámka pod cenou (sticker title) – beze změny */
.price-note { margin-top: .25rem; color: #f74a68; font-weight: 200; }

/* Overlay */
.pl-backdrop {
  position: fixed; inset: 0;
  background: rgba(0,0,0,.45);
  z-index: 1055;
  display: flex; align-items: center; justify-content: center;
}
.pl-modal {
  background: #fff; color: #222;
  width: min(720px, 92vw);
  max-height: 80vh; overflow: auto;
  border-radius: 0;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}
.pl-header {
  position: sticky; top: 0;
  display: flex; align-items: center; justify-content: space-between;
  padding: .75rem 1rem; background: #f8f9fa; border-bottom: 1px solid #e5e7eb;
}
.pl-close {
  border: 0; background: none; font-size: 1.5rem; line-height: 1; cursor: pointer;
}
.pl-body { padding: 1rem; }
.pl-loading, .pl-error { padding: 1rem; text-align: center; color: #555; }
.pl-table { width: 100%; border-collapse: collapse; }
.pl-table th, .pl-table td { padding: .5rem .6rem; border-bottom: 1px solid #eee; text-align: left; }
.pl-table thead th { position: sticky; top: 0; background: #fafafa; z-index: 1; }

/* disable scroll na body, když je otevřeno */
body.modal-open { overflow: hidden; }

.pl-remote {
  font-size: 0.95rem;
  color: #222;
}

.pl-remote table.left {
  width: 100%;
  border-collapse: collapse;
  margin-top: .5rem;
}

.pl-remote table.left td {
  padding: .4rem .5rem;
  border-bottom: 1px solid #eee;
}

.pl-remote b {
  font-weight: 600;
}