/* PrintZona • lokální návrh 25. 10. 2026 (Codex, převzal a po kontrole logiky upravil Claude 25. 10. 2026, místa označena „Claude 25. 10.“; původní kandidát md5 dab93356…). Pouze vzhled existujících stavů.
   Žádné přesuny plátna, varování, provázení ani změny pořadí produktů. */
html.pz-ui-app {
  --pz-nakup-ink: #163b32;
  --pz-nakup-line: #b7cfc4;
  --pz-nakup-selected: #e4f3ef;
  --pz-nakup-focus: #146974;
}

/* Stejná výška a pohyblivý skleněný indikátor; krok má čitelný statický stav. */
html.pz-ui-app .pz-journey button { color:#51675e; }
html.pz-ui-app .pz-journey button b {
  font-variant-numeric:tabular-nums;   /* Claude 25. 10.: stín čísla (inset) vyřazen, přebíjel hravý vzhled */
}
html.pz-ui-app .pz-journey button[aria-current] { color:var(--pz-nakup-ink); font-weight:700; }
html.pz-ui-app .pz-journey button[aria-current] b {
  color:#fff;   /* Claude 25. 10.: pozadí a stín čísla aktuálního kroku vyřazeny, přebíjely hravý vzhled */
}
html.pz-ui-app .pz-journey button:focus-visible {
  outline:3px solid var(--pz-nakup-focus);outline-offset:2px;
}

/* Velikosti: existující .on je jediným zdrojem vybraného stavu. */
html.pz-ui-app #sizeGrp #sizeLab {
  color:var(--pz-nakup-ink);font-weight:700;letter-spacing:.04em;
}
html.pz-ui-app #sizeGrp .sm-radek {
  box-shadow:0 1px 0 rgba(22,59,50,.04);
}
html.pz-ui-app #sizeGrp .sm-radek.on {
  background:var(--pz-nakup-selected);
  border-color:#5d9f91!important;
  box-shadow:inset 3px 0 0 #287f72;
}
html.pz-ui-app #sizeGrp .sm-radek.on .sm-v { color:var(--pz-nakup-ink);font-weight:800; }
html.pz-ui-app #sizeGrp .sm-krok { box-shadow:inset 0 0 0 1px #d3e2da; }
html.pz-ui-app #sizeGrp .sm-krok input {
  background:#fff;color:var(--pz-nakup-ink);font-weight:700;
  font-variant-numeric:tabular-nums;
}
html.pz-ui-app #sizeGrp .sm-radek.on .sm-krok input { background:#fff; }
html.pz-ui-app #sizeGrp .sm-krok button {
  color:var(--pz-nakup-ink);min-height:44px;
}
html.pz-ui-app #sizeGrp :is(.sm-krok button,.sm-krok input):focus-visible {
  position:relative;z-index:1;outline:3px solid var(--pz-nakup-focus);outline-offset:-3px;
}
html.pz-ui-app #sizeGrp #sizeHelpBtn { min-height:44px;text-underline-offset:3px; }

/* Autoritativní cenu a upozornění stále plní původní editor. */
html.pz-ui-app #sizeGrp .pz-review {
  background:#fff;border-color:var(--pz-nakup-line);border-top:3px solid #81b2a3;
  box-shadow:0 3px 12px rgba(22,59,50,.045);
}
html.pz-ui-app #sizeGrp .pz-review h3 { color:var(--pz-nakup-ink);font-size:15px;margin-bottom:12px; }
html.pz-ui-app #sizeGrp .pz-review h4 { font-size:10px;letter-spacing:.04em;color:#51675e; }
html.pz-ui-app #sizeGrp .pz-review p { color:var(--pz-nakup-ink);line-height:1.55; }
html.pz-ui-app #sizeGrp .pz-review .pz-review-price {
  border-top:1px solid #d4e3db;padding-top:8px;margin-top:4px;
  font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.35;
}
html.pz-ui-app #sizeGrp .pz-review .pz-review-warn {
  background:#fff4d9;color:#6e4816;border:1px solid #e2c480;font-size:12px;
}
html.pz-ui-app #sizeGrp .pz-review-actions button {
  background:#fff;color:#235f58;border-color:#b7cfc4;
  font-size:12px;box-shadow:none;
}
html.pz-ui-app #sizeGrp .pz-review-actions button:first-child {
  background:#edf6f3;border-color:#81b2a3;color:#16493d;
}
/* Claude 25. 10.: odezva při najetí myší a při stisku (kandidát ji vypínal pevným pozadím) */
html.pz-ui-app #sizeGrp .pz-review-actions button:hover:not(:disabled) { background:#e5efea; }
html.pz-ui-app #sizeGrp .pz-review-actions button:first-child:hover:not(:disabled) { background:#dcece6; }
html.pz-ui-app :is(#buyBtn,#mBuy,#mVelBuy):not(.ceka-vel) {
  font-weight:800;
}
/* Nezaměnit chybějící velikost se stavem připraveným do košíku. */
html.pz-ui-app :is(#buyBtn,#mBuy,#mVelBuy).ceka-vel { border-color:#8eaa4f; }

/* Existující doplňkové nabídky v košíku. Selektory vyhrávají nad styl() v crosssell.js. */
html.pz-ui-app .pzcs {
  border-top:1px solid #b7cfc4;padding-top:16px;margin-top:18px;
}
html.pz-ui-app .pzcs h3 { font-size:16px;line-height:1.35;font-weight:700;color:var(--pz-nakup-ink); }
html.pz-ui-app .pzcs .pzcs-sub { font-size:12px;line-height:1.5;color:#51675e;margin-top:5px; }
html.pz-ui-app .pzcs .pzcs-list { gap:12px; }
html.pz-ui-app .pzcs .pzcs-karta {
  padding:12px;gap:12px;border-radius:16px;background:#fff;
  border:1px solid #d3e2da;box-shadow:0 2px 8px rgba(22,59,50,.035);
}
html.pz-ui-app .pzcs .pzcs-karta .pzcs-obr {
  width:96px;border-radius:10px;background:#eef2ef;
}
html.pz-ui-app .pzcs .pzcs-info { gap:4px; }
html.pz-ui-app .pzcs .pzcs-typ { color:#356d60;font-size:10px;font-weight:800; }
html.pz-ui-app .pzcs .pzcs-nazev { color:var(--pz-nakup-ink);font-size:14px;line-height:1.35; }
html.pz-ui-app .pzcs :is(.pzcs-barva,.pzcs-pozn,.pzcs-velpozn,.pzcs-stav) {
  color:#51675e;font-size:12px;line-height:1.45;overflow-wrap:anywhere;
}
html.pz-ui-app .pzcs .pzcs-pozn { padding-top:2px; }
html.pz-ui-app .pzcs .pzcs-cena {
  font-size:17px;font-weight:800;line-height:1.4;color:var(--pz-nakup-ink);
  font-variant-numeric:tabular-nums;
}
html.pz-ui-app .pzcs .pzcs-tl { gap:6px;margin-top:8px; }
html.pz-ui-app .pzcs :is(.pzcs-pridat,.pzcs-upravit,.pzcs-rozbal) {
  min-height:44px;border-radius:11px;font-size:12px;line-height:1.3;
  padding:9px 13px;white-space:normal;
}
html.pz-ui-app .pzcs .pzcs-pridat {
  background:#d9edeb;border-color:#80b9b0;color:#163b32;
}
html.pz-ui-app .pzcs .pzcs-upravit {
  background:#fff;border-color:#c4d8cd;color:#235f58;
}
html.pz-ui-app .pzcs .pzcs-karta[data-slot="ksiltovka"] {
  background:#f0f8f6;border-color:#72aa9d;
  box-shadow:inset 3px 0 0 #408777,0 2px 8px rgba(22,59,50,.035);
}
html.pz-ui-app .pzcs .pzcs-karta[data-slot="ksiltovka"] .pzcs-typ { color:#1f6255; }
html.pz-ui-app .pzcs .pzcs-karta.hotovo .pzcs-pridat {
  background:#edf4d9;border-color:#c0d68f;color:#31521f;opacity:1;
}
html.pz-ui-app .pzcs .pzcs-stav.chyba { color:#9d2925;font-weight:600; }
html.pz-ui-app .pzcs :is(button,select,input):focus-visible {
  outline:3px solid var(--pz-nakup-focus);outline-offset:2px;
}
html.pz-ui-app .pzcs-okno :is(.sm-krok button,.sm-krok input) { min-height:44px; }
html.pz-ui-app .pzcs-okno .pzcs-okno-ok { min-height:48px;font-weight:800; }
html.pz-ui-app .pzcs-okno :is(button,input):focus-visible {
  outline:3px solid var(--pz-nakup-focus);outline-offset:2px;
}

@media(max-width:900px) {
  html.pz-ui-app #sizeGrp .sm-krok input { font-size:16px!important; }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-list {
    flex-direction:column;overflow-x:visible;scroll-snap-type:none;
    gap:12px;padding:2px 16px 12px;
  }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-karta {
    flex:0 0 auto;width:auto;flex-direction:row;align-items:flex-start;
    gap:12px;padding:12px;scroll-snap-align:none;
  }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-obr {
    width:88px;height:auto;aspect-ratio:560/750;flex:0 0 88px;
  }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-info { gap:4px; }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-tl {
    flex-direction:row;gap:6px;flex-wrap:wrap;
  }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs :is(.pzcs-pridat,.pzcs-upravit) {
    width:auto;flex:1 1 auto;min-height:44px;
  }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-upravit {
    background:#fff;border:1px solid #c4d8cd;text-decoration:none;
  }
}
@media(max-width:370px) {
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-karta { gap:10px;padding:10px; }
  html.pz-ui-app .m-pane[data-pane="kosik"] .pzcs .pzcs-obr { width:72px;flex-basis:72px; }
}
@media(prefers-reduced-motion:reduce) {
  html.pz-ui-app .pzcs .pzcs-karta.ceka .pzcs-obr::after { animation:none; }
}
html.pz-ui-app.pz-bez-pohybu .pzcs .pzcs-karta.ceka .pzcs-obr::after { animation:none; }
/* V okně doplňku jsou i +/- skutečné dotykové cíle. */
html.pz-ui-app .pzcs-okno .sm-krok button { min-width:44px; }
@media(max-width:900px) {
  html.pz-ui-app .pzcs-okno .sm-krok button { width:44px; }
}
/* Jediná velikost (např. kšiltovka): celý řádek, oba ovladače a skutečný počet. */
html.pz-ui-app .pzcs-okno .sm-v { color:var(--pz-nakup-ink); }
html.pz-ui-app .pzcs-okno .sm-krok {
  width:132px!important;min-width:132px;max-width:132px;flex:none;
}
html.pz-ui-app .pzcs-okno .sm-krok button {
  width:44px;min-width:44px!important;flex:0 0 44px;
}
html.pz-ui-app .pzcs-okno .sm-krok input {
  width:44px!important;min-width:44px!important;flex:0 0 44px;
  color:var(--pz-nakup-ink);background:#fff;font-variant-numeric:tabular-nums;
}
html.pz-ui-app .pzcs-okno .sm-radek:only-child {
  grid-column:1 / -1;flex-direction:row;align-items:center;gap:12px;
}
@media(max-width:900px) {
  /* Více velikostí se vejde včetně 44 px +/- i na 360 px telefonu. */
  html.pz-ui-app .pzcs-okno .sm-radek:not(:only-child) {
    flex-direction:column;align-items:flex-start;gap:5px;
  }
  html.pz-ui-app .pzcs-okno .sm-radek:not(:only-child) .sm-krok { margin-left:0; }
  /* Původní odkaz zůstává na očích při procházení dobrovolných doplňků. */
  html.pz-ui-app .m-pane[data-pane="kosik"] #mKosDal {
    position:sticky;top:0;z-index:3;min-height:48px;
    box-shadow:0 0 0 8px #fff,0 6px 16px rgba(22,59,50,.12);
  }
  /* Claude 25. 10.: fokus a scrollIntoView nesmí zajet pod přichycený odkaz */
  html.pz-ui-app #mSheetBody { scroll-padding-top:72px; }
}
/* Dialog s více velikostmi: rolovat mohou řádky, cena i potvrzení zůstávají uvnitř okna. */
html.pz-ui-app .pzcs-okno {
  box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;
  max-height:90vh;max-height:90dvh;
}
html.pz-ui-app .pzcs-okno > :not(.sm-radky) { flex-shrink:0; }
html.pz-ui-app .pzcs-okno .sm-radky {
  flex:0 1 auto;min-height:88px;max-height:none;overflow-y:auto;overscroll-behavior:contain;   /* Claude 25. 10.: min-height 88 px (bylo 0) */
}
/* Claude 25. 10.: nízké okno (telefon naležato): rolovat smí celé okno jako dřív, seznam velikostí se nesmrskne */
@media(max-height:420px) {
  html.pz-ui-app .pzcs-okno { overflow-y:auto; }
  html.pz-ui-app .pzcs-okno .sm-radky { flex-shrink:0;min-height:0;overflow-y:visible; }
}
@media(max-width:900px) {
  html.pz-ui-app .pzcs-okno { max-height:88vh;max-height:88dvh; }
}
