/* PrintZona 21. 10. 2026: světlé pracovní plochy, původní Poppins a tiskové barvy zůstávají. */
:root{color-scheme:light;--bg:#f4f7f5;--panel:#fff;--panel-2:#edf3ef;--stage:#eef2ef;--line:rgba(22,51,45,.14);--line-strong:rgba(22,51,45,.28);--ink:#16332d;--muted:#51675e;--muted-2:#5c7067;--tq:#74ccd8;--tq-deep:#256b70;--lime:#c9dd68;--tq-soft:#eaf6f5;--tq-glow:rgba(37,107,112,.17);--danger:#ad392d}
body,.app{background:var(--bg);color:var(--ink)}
.topbar,.bottombar,.m-dock{background:rgba(255,255,255,.96);border-color:var(--line)}
.topbar{box-shadow:0 4px 18px rgba(22,51,45,.035)}
.brand .z{color:#16332d}
.brand-mark{box-shadow:none}
.stage-wrap,html.pz-nove .stage-wrap{background:radial-gradient(ellipse at 50% 38%,#fff,#e7eeea)}
.stage{box-shadow:0 15px 38px rgba(22,51,45,.08)}
html.pz-nove #pzRail{background:#f4f7f5}
html.pz-nove #pzRail button:hover{background:#e6efea;color:var(--ink)}
html.pz-nove #pzRail button.on{background:#d7efed;color:var(--ink)}
html.pz-nove #pzZoom{background:rgba(255,255,255,.88);box-shadow:0 4px 18px rgba(22,51,45,.07)}
html.pz-nove #pzPill{box-shadow:0 5px 20px rgba(22,51,45,.12);border:1px solid var(--line)}
html.pz-nove #pzPohledy .vt{background:rgba(255,255,255,.7)}
.view-toggle{background:rgba(255,255,255,.9)!important;border-color:var(--line-strong);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.vt.on{background:#d7efed;color:#16332d}
.modal,.m-sheet,.popover,.welcome-box,.cena-pop,.pz-fly{background:#fff;color:var(--ink)}
.modal-bg{background:rgba(22,51,45,.38)}
.modal,.welcome-box,.m-sheet{box-shadow:0 18px 70px rgba(22,51,45,.2)}
.rbtn:hover{background:#e7f2ee}
.rbtn i,.pz-zmenit,html.pz-nove .pz-zmenit,html.pz-nove .pz-velke i,html.pz-nove .pz-odkazy button i{color:#256b70}
.props select option,select option{background:#fff;color:#16332d}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),textarea,select{background:#fff;color:var(--ink);border-color:var(--line-strong)}
input::placeholder,textarea::placeholder{color:#718176;opacity:1}
.btn-ghost,.ic{color:var(--ink)}
.btn-ghost:hover,.ic:hover{background:#e8f1ec}
.btn-lime,.m-buy,html.pz-nove #buyBtn.kl-kosik{background:var(--lime);color:#16332d}
html.pz-nove #buyBtn.kl-kosik.ceka-vel,.m-buy.ceka-vel{color:#16332d;background:#f3f6e6;box-shadow:inset 0 0 0 2px #9aad52}
.kl-cena-hl,.summary-price,.m-shrn-cena,.price-total{color:#16332d}
.m-shrn-zmenit,.req,.m-sheet a{color:#256b70}
.m-shrn{border-color:var(--line)}
.mobile-tabs{background:#fff;border-color:var(--line)}
.mobile-tabs button{color:#52695e}
.mobile-tabs button.on{background:#def0eb;color:#16332d}
.m-sheet-head,.m-sheet-foot{background:#fff;border-color:var(--line)}
.w-opt,.m-prod-card,.vyber-karta{background:#f5f8f5;border-color:var(--line)}
.w-opt:hover,.vyber-karta:hover{background:#edf5f0;border-color:#8eb8a8}
#pzCookie{background:#fff!important;color:#16332d!important;border-color:var(--line-strong)!important;box-shadow:0 10px 35px rgba(22,51,45,.17)!important}
#pzCookie p,#pzCookie a,#pzCookie button{color:#16332d!important}
#pzCookie button{border-color:#a6beb3!important}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #256b70;outline-offset:3px}
/* Začátek tvorby má tři hlavní nástroje. Produkt, barva a počty zůstávají dostupné ve stejné liště. */
@media(max-width:900px){
  html:not(.pz-ae) .mobile-tabs{display:grid!important;grid-template-columns:repeat(3,1fr);gap:4px 6px;padding:8px 12px calc(6px + env(safe-area-inset-bottom))}
  html:not(.pz-ae) .mobile-tabs button{min-height:39px;border-radius:10px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;font-size:11px;padding:7px 4px}
  html:not(.pz-ae) #mTabObrazek{order:1}html:not(.pz-ae) #mTabText{order:2}html:not(.pz-ae) #mTabMotivy{order:3}
  html:not(.pz-ae) #mTabObrazek,html:not(.pz-ae) #mTabText,html:not(.pz-ae) #mTabMotivy{background:#edf6f3;color:#16332d;min-height:46px;font-size:12px;font-weight:700}
  html:not(.pz-ae) #mTabProdukt{order:4}html:not(.pz-ae) #mTabBarva{order:5}html:not(.pz-ae) #mTabVelikost{order:6}
  html:not(.pz-ae) .mobile-tabs button i{font-size:19px}
  html:not(.pz-ae) .mobile-tabs button.on{background:#d0eae5!important;box-shadow:inset 0 0 0 1px #89b5a6}
  .m-dock{box-shadow:0 -4px 24px rgba(22,51,45,.065)}
  .m-shrn{background:rgba(255,255,255,.95)}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* 21. 10. 2026: úvodní mobilní volby měly původní tmavé pozadí a nově tmavý text. */
#mSheet .m-start button{background:#edf5ef;border-color:#b9cec3;color:#16332d;padding:12px 6px}
#mSheet .m-start button b{color:#16332d;font-size:12px;line-height:1.45}
#mSheet .m-start button i{color:#256b70}
#mSheet .m-start button:focus-visible{outline:2px solid #256b70;outline-offset:2px}

/* 21. 10. 2026: ceny a potvrzení v košíku musí zůstat čitelné na světlých plochách.
   Cross-sell vkládá své styly později; cílená vyšší specificita zachová tmavý text. */
body .m-kos-cena,body .drawer-total b,body .pzcs .pzcs-cena,
body .m-kos-doprava.ok,body .drawer-ship.ok,
body .pzcs-karta.hotovo .pzcs-pridat{color:#16332d}

/* AI porovnání: oba obrázky ve stejném měřítku rámu, i při nízkém rozlišení originálu. */
#zkNahled .pozadi-ramecek img{width:100%;height:100%;object-fit:contain}

/* 22. 10. 2026: viditelný klávesnicový fokus posuvníků bez změny jejich rozměrů či ovládání. */
body input[type=range]:focus-visible{outline:3px solid #256b70;outline-offset:4px}

/* 23.10.2026: místní vzhled nad čerstvou živou kopií. Nemění výpočty ani rozměry tisku. */
html.pz-ui-app{--pz-radius:18px;--pz-shadow:0 8px 28px rgba(22,51,45,.06);--pz-footer-button:clamp(280px,26vw,360px)}
html.pz-ui-app .app{height:100dvh;min-width:0;background:var(--bg)}
html.pz-ui-app button{font-family:inherit;touch-action:manipulation}
html.pz-ui-app :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--tq-deep);outline-offset:3px}
html.pz-ui-app :is(.pz-journey,.pz-flow,.workspace,.konfig,#pzFly,#panelRight){min-width:0}
html.pz-ui-app .topbar{min-height:72px;padding:12px 24px;gap:18px;border-bottom:1px solid var(--line);box-shadow:none}
html.pz-ui-app .topbar .brand img{width:154px!important}
html.pz-ui-app .topbar .brand-txt{display:none}
html.pz-ui-app .topbar :is(.ic,.btn){min-height:44px;border-radius:12px}
html.pz-ui-app .topbar .ic{min-width:44px}
html.pz-ui-app .topbar .top-actions{gap:8px;min-width:0}
html.pz-ui-app .btn-novy{border:1px solid var(--line-strong);background:#fff}
html.pz-ui-app .btn-ulozit{background:#fff;color:var(--ink);border-color:var(--line-strong)}
html.pz-ui-app .pz-journey{order:2;align-items:center;min-height:72px;padding:10px 20px;gap:28px;position:relative}
html.pz-ui-app .pz-journey button{position:relative;gap:10px;border-radius:999px;min-height:46px;padding:8px 18px 8px 8px;font-size:13px;line-height:1.35;flex:0 1 auto;text-align:left;max-width:260px}
html.pz-ui-app .pz-journey button:not(:last-child)::after{content:"";width:20px;height:2px;position:absolute;right:-25px;background:#c7d4cc;border-radius:2px}
html.pz-ui-app .pz-journey button b{width:30px;height:30px;flex:none;font-size:12px;font-weight:600}
html.pz-ui-app .pz-journey button[aria-current]{background:var(--tq-soft);border-color:var(--tq-deep);box-shadow:0 0 0 4px rgba(116,204,216,.10)}
html.pz-ui-app .pz-journey button[aria-current] b{background:var(--ink);color:#fff}
html.pz-ui-app .topbar{order:1}
html.pz-ui-app .workspace{order:3;flex:1;min-height:0}
html.pz-ui-app .pz-flow-desktop{order:4;min-height:86px;padding:14px 24px;gap:20px;border-top:1px solid var(--line);border-bottom:0;z-index:40;box-shadow:0 -6px 22px rgba(22,51,45,.035)}
html.pz-ui-app .pz-flow-desktop .pz-flow-note{display:none}
html.pz-ui-app .pz-flow-actions{gap:10px;align-items:center}
html.pz-ui-app .pz-flow button{border-radius:14px;min-height:50px;font-size:13px;padding:14px 20px;line-height:1.4;white-space:normal;text-wrap:balance}
html.pz-ui-app .pz-flow-next{min-width:var(--pz-footer-button);background:var(--lime);border-color:transparent;box-shadow:0 3px 0 rgba(22,51,45,.14)}
html.pz-ui-app .pz-flow-next::after{content:"→";margin-left:16px;font-size:20px;line-height:1}
html.pz-ui-app .pz-flow-back::before{content:"←";margin-right:10px}
html.pz-ui-app .pz-ui-summary{display:flex;align-items:center;gap:13px;min-width:0;flex:1}
html.pz-ui-app .pz-ui-summary-photo{height:52px;width:44px;flex:none;border-radius:10px;background-color:var(--panel-2);background-position:center;background-size:cover}
html.pz-ui-app .pz-ui-summary-copy{min-width:0;display:grid;gap:2px}
html.pz-ui-app .pz-ui-summary-copy b{font-size:13px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
html.pz-ui-app .pz-ui-summary-copy small{font-size:11px;color:var(--muted)}
html.pz-ui-app .pz-ui-summary-price{font-size:22px;line-height:1.2;font-weight:700;white-space:nowrap;margin-left:8px;font-variant-numeric:tabular-nums}
html.pz-ui-app.pz-nove #pzRail{width:80px;padding:16px 6px;background:#fff;gap:9px}
html.pz-ui-app.pz-nove #pzRail button{min-height:64px;width:64px;gap:7px;font-size:11px;line-height:1.2;color:var(--muted)}
html.pz-ui-app.pz-nove #pzRail button.on{background:var(--tq-soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--tq-deep)}
html.pz-ui-app.pz-nove #pzRail button i{font-size:25px}
html.pz-ui-app.pz-nove #pzFly{width:280px;background:#fff}
html.pz-ui-app.pz-nove #pzFly>.panel-left.pz-pane{padding:22px 18px}
html.pz-ui-app.pz-nove #pzFly>section.pz-pane{padding:22px 20px;gap:16px}
html.pz-ui-app.pz-nove #panelRight{width:330px;background:#fff;overscroll-behavior:contain}
html.pz-ui-app.pz-nove .konfig{padding:22px;gap:20px}
html.pz-ui-app.pz-nove .pz-prod h2{font-size:21px;font-weight:700;line-height:1.3;text-wrap:balance}
html.pz-ui-app.pz-nove .pz-prod p{font-size:12px;line-height:1.6}
html.pz-ui-app.pz-nove .pz-zmenit{min-height:44px;margin:0;font-size:12px}
html.pz-ui-app.pz-nove .konfig .lab{font-size:11px;letter-spacing:.055em;color:var(--muted);margin-bottom:10px}
html.pz-ui-app.pz-nove .konfig .swatches{gap:5px}
html.pz-ui-app.pz-nove .konfig .sw{height:44px;width:44px;border:5px solid #fff;box-shadow:inset 0 0 0 1px rgba(22,51,45,.18);outline:none;margin:0}
html.pz-ui-app.pz-nove .konfig .sw.on{box-shadow:0 0 0 2px var(--tq-deep),inset 0 0 0 1px rgba(22,51,45,.18)}
html.pz-ui-app.pz-nove .konfig .sw:focus-visible{outline:3px solid var(--tq-deep);outline-offset:2px}
html.pz-ui-app.pz-nove .stage-wrap{min-width:0;overflow:hidden;background:radial-gradient(ellipse at 50% 43%,#fff 0%,#eef4f0 65%,#e8efeb 100%)}
html.pz-ui-app.pz-nove .stage-scroll{min-height:0;padding:24px 22px 8px}
html.pz-ui-app .stage{border-radius:22px;box-shadow:0 8px 35px rgba(22,51,45,.045)}
html.pz-ui-app.pz-nove #pzZoom{left:12px;padding:5px;border:1px solid var(--line);background:rgba(255,255,255,.96);border-radius:24px;box-shadow:var(--pz-shadow)}
html.pz-ui-app.pz-nove #pzZoom .ic{width:44px;height:44px}
html.pz-ui-app.pz-nove #pzZoom input[type=range]{height:72px;accent-color:var(--tq-deep)}
html.pz-ui-app.pz-nove #pzPill{min-height:52px;border-radius:16px;padding:4px;background:var(--ink);color:#fff;box-shadow:0 6px 18px rgba(22,51,45,.16);max-width:calc(100% - 20px)}
html.pz-ui-app.pz-nove #pzPill button{height:44px;min-width:44px;border-radius:10px;color:#fff;font-size:12px;padding:0 12px}
html.pz-ui-app.pz-nove #pzPill button:hover{background:rgba(255,255,255,.12)}
html.pz-ui-app.pz-nove #pzPohledy{padding:12px 14px 20px}
html.pz-ui-app.pz-nove #pzPohledy .view-toggle{background:transparent!important;gap:8px;border:0;backdrop-filter:none;max-width:100%;flex-wrap:wrap;justify-content:center}
html.pz-ui-app.pz-nove #pzPohledy .vt{width:74px;min-height:60px;gap:5px;padding:6px;border-radius:14px;background:#fff;color:var(--muted);border:1px solid var(--line)}
html.pz-ui-app.pz-nove #pzPohledy .vt.on{border-color:var(--tq-deep);color:var(--ink);box-shadow:0 0 0 3px var(--tq-soft)}
html.pz-ui-app.pz-nove #pzPohledy .vt .vt-img{height:38px;width:34px;border-radius:7px}
html.pz-ui-app.pz-nove #pzPohledy .vt-txt{font-size:10px;line-height:1.4;min-height:0;overflow-wrap:anywhere}
html.pz-ui-app #viewToggle button[aria-pressed]{width:auto!important;min-height:44px!important;max-width:100%;padding:10px 14px!important;border-radius:999px!important;flex-direction:row!important;flex-basis:100%;justify-content:center;font-size:11px!important;gap:9px!important;background:#fff!important;border-color:var(--line-strong)!important;color:var(--ink)!important;white-space:normal}
html.pz-ui-app #viewToggle button[aria-pressed]::before{content:"";height:22px;width:36px;flex:none;border-radius:999px;background:radial-gradient(circle at 11px 50%,#fff 7px,transparent 8px),#8b9e95;box-shadow:inset 0 0 0 1px rgba(22,51,45,.12)}
html.pz-ui-app #viewToggle button[aria-pressed=true]{border-color:var(--tq-deep)!important;background:var(--tq-soft)!important}
html.pz-ui-app #viewToggle button[aria-pressed=true]::before{background:radial-gradient(circle at 25px 50%,var(--ink) 7px,transparent 8px),var(--lime)}
html.pz-ui-app .vyber-typy{gap:7px;grid-template-columns:repeat(3,minmax(0,1fr))}
html.pz-ui-app .vyber-typ{min-height:58px;border-radius:12px;background:#fff;padding:10px 7px;border-color:var(--line);font-size:12px;white-space:normal}
html.pz-ui-app .vyber-typ b{font-size:12px;line-height:1.35;white-space:normal;overflow:visible}
html.pz-ui-app .vyber-typ .typ-cena{font-size:10px;line-height:1.3;color:var(--muted);white-space:normal}
html.pz-ui-app .vyber-typ[aria-selected=true]{border-color:var(--tq-deep);background:var(--tq-soft);color:var(--ink)}
html.pz-ui-app .vyber-typ .typ-tecka{display:none}
html.pz-ui-app .model{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 2px 3px rgba(22,51,45,.025);gap:12px}
html.pz-ui-app .model[aria-pressed=true]{border-color:var(--tq-deep);background:var(--tq-soft);box-shadow:0 0 0 3px rgba(116,204,216,.12)}
html.pz-ui-app .md-uroven{color:var(--tq-deep);font-size:10px;letter-spacing:.05em}
html.pz-ui-app .md-nazev{font-size:14px;line-height:1.35;font-weight:700;white-space:normal;overflow:visible}
html.pz-ui-app .md-duvod{font-size:11px;line-height:1.45;color:var(--muted)}
html.pz-ui-app .md-kc{font-size:15px;color:var(--ink)}
html.pz-ui-app .md-bez{font-size:10px;line-height:1.45;color:var(--muted);white-space:normal}
html.pz-ui-app .md-rozdil.vybrano{color:var(--tq-deep)}
html.pz-ui-app .dalsi-btn{min-height:44px;font-size:12px;color:var(--tq-deep);border-color:var(--line-strong);border-radius:12px;background:#fff}
html.pz-ui-app .model .md-foto{border-radius:10px;overflow:hidden;background:#f0f2f0}
html.pz-ui-app .model .md-foto img{object-fit:contain;object-position:center}
html.pz-ui-app .pz-velke{background:var(--tq-soft)!important;border:1px dashed var(--tq-deep)!important;border-radius:18px!important;min-height:150px}
html.pz-ui-app .pz-velke i{color:var(--tq-deep)!important}
html.pz-ui-app .pz-start-options button{border-radius:14px;min-height:58px;font-size:13px;box-shadow:0 2px 4px rgba(22,51,45,.02)}
html.pz-ui-app .pz-h{font-weight:700;font-size:20px!important;line-height:1.3;text-wrap:balance}
html.pz-ui-app .lab{color:var(--muted)}
html.pz-ui-app .rbtn{min-height:44px;border-radius:11px;border-color:var(--line);line-height:1.4}
html.pz-ui-app .rbtn.sm{min-height:44px;white-space:normal}
html.pz-ui-app :is(.props input,.props select){min-height:44px;font-size:14px;border-radius:10px}
html.pz-ui-app .dpi-warn{border-radius:14px;border:1px solid #d8b463;background:#fff5de;color:#614411;box-shadow:none;max-width:calc(100% - 24px);line-height:1.55;font-size:12px;margin:12px}
html.pz-ui-app .dpi-warn button{min-height:44px;border-radius:11px}
html.pz-ui-app .kl-cena-hl{font-size:30px!important;line-height:1.15;font-variant-numeric:tabular-nums}
html.pz-ui-app .kl-cena-j{font-size:12px}
html.pz-ui-app .kl-cena-pod{font-size:11px!important;line-height:1.6!important}
html.pz-ui-app .pz-odkazy{padding-top:14px;border-top:1px solid var(--line)}
html.pz-ui-app .pz-odkazy button{min-height:44px;font-size:12px!important}
html.pz-ui-app .pz-review{border-radius:16px;padding:16px;background:var(--panel-2);border:1px solid var(--line);width:100%;margin-top:14px}
html.pz-ui-app .pz-review h3{font-size:16px;line-height:1.4;margin-bottom:14px}
html.pz-ui-app .pz-review h4{font-size:11px;line-height:1.4;margin-top:12px;color:var(--muted)}
html.pz-ui-app .pz-review p{font-size:12px;line-height:1.55}
html.pz-ui-app .pz-review-actions{margin-top:14px;gap:8px}
html.pz-ui-app .pz-review-actions button{min-height:44px;white-space:normal}
html.pz-ui-app .sm-radky{gap:12px!important}
html.pz-ui-app .sm-radek{border:1px solid var(--line)!important;border-radius:12px;padding:9px!important;background:#fff}
html.pz-ui-app .sm-v{font-size:12px!important;margin-bottom:3px}
html.pz-ui-app .sm-krok{height:44px!important;border:0;background:var(--panel-2)!important;border-radius:9px}
html.pz-ui-app .sm-krok :is(button,input){height:44px!important;min-width:28px}
html.pz-ui-app .sm-krok button{min-width:44px!important;font-size:18px}
html.pz-ui-app .sm-radek.on{background:var(--tq-soft);border-color:var(--tq-deep)!important}
html.pz-ui-app .sm-pasmo{font-size:11px;line-height:1.6;color:var(--tq-deep)!important}
html.pz-ui-app #sizeHelpBtn{min-height:44px;font-size:12px}
html.pz-ui-app #buyBtn{border-radius:15px!important;min-height:52px;background:var(--lime)!important;color:var(--ink)!important;font-weight:700;font-size:14px;white-space:normal}
html.pz-ui-app [data-stav="brzy"]{display:none!important}
.pz-ic{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}
/* Jediná sdílená Pomoc, připravená také pro košík. Aktivaci a obsah vlastní Claude. */
.pz-pomoc{display:grid;gap:12px;min-width:0;padding:20px 22px;border-top:1px solid var(--line);font-family:inherit;color:var(--ink)}
.pz-pomoc[hidden],.pz-pomoc [hidden]{display:none!important}
.pz-pomoc-head{display:flex;gap:10px;align-items:center;justify-content:space-between}
.pz-pomoc-head h2{font-size:16px;font-weight:700;line-height:1.4;margin:0}
.pz-pomoc-options{display:grid;gap:12px;margin:0;padding:0;border:0;min-width:0}
.pz-pomoc-free{background:#e1f2e7;border-radius:14px;padding:12px;display:flex;gap:10px;align-items:center;font-size:12px;font-weight:600}
.pz-pomoc-free>.pz-ic{color:#2c7448}
.pz-pomoc-free [data-pz-cena]{margin-left:auto;white-space:nowrap}
.pz-pomoc-card{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;text-align:left;border:1px solid var(--line);border-radius:16px;padding:16px 14px;background:#fff;color:var(--ink);font:inherit;min-height:92px;width:100%;white-space:normal;cursor:pointer}
.pz-pomoc-card .pz-pomoc-icon{width:40px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--panel-2)}
.pz-pomoc-card .pz-pomoc-copy{min-width:0;display:grid;gap:6px}
.pz-pomoc-card .pz-pomoc-title{font-size:13px;font-weight:700;line-height:1.45;margin:0;text-wrap:balance}
.pz-pomoc-card [data-pz-cena]{font-size:17px;line-height:1.2;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.pz-pomoc-card [data-pz-popis],.pz-pomoc-card [data-pz-lhuta]{font-size:11px;line-height:1.6;font-weight:400;margin:0;color:var(--muted);overflow-wrap:anywhere}
.pz-pomoc-card .pz-pomoc-price-line{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;justify-content:space-between}
.pz-pomoc-card[data-pz-pomoc=ai]{background:var(--tq-soft);border-color:var(--tq)}
.pz-pomoc-card[data-pz-pomoc=ai] .pz-pomoc-icon{background:var(--tq);color:var(--ink)}
.pz-pomoc-card[data-pz-pomoc=grafik]{background:#f3f8dc;border-color:#afc558}
.pz-pomoc-card[data-pz-pomoc=grafik] .pz-pomoc-icon{background:var(--lime)}
.pz-pomoc-card[data-pz-pomoc=navrh]{background:var(--ink);color:#fff;border-color:var(--ink)}
.pz-pomoc-card[data-pz-pomoc=navrh] :is([data-pz-popis],[data-pz-lhuta]){color:#d0e0d8}
.pz-pomoc-card[data-pz-pomoc=navrh] .pz-pomoc-icon{background:var(--lime);color:var(--ink)}
.pz-pomoc-card[aria-checked=true]{outline:2px solid var(--tq-deep);outline-offset:2px}
.pz-pomoc-badge{position:absolute;right:12px;top:-9px;max-width:calc(100% - 24px);padding:3px 9px;border-radius:99px;background:var(--lime);color:var(--ink);font-size:9px;font-weight:700;line-height:1.4;letter-spacing:.02em}
.pz-pomoc-vat{font-size:11px;color:var(--muted);margin:0;text-align:center}
.pz-pomoc-sheet{width:min(100%,480px);max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:24px;padding:0;background:#fff;color:var(--ink);overscroll-behavior:contain}
.pz-pomoc-sheet::backdrop{background:rgba(22,51,45,.46);backdrop-filter:blur(3px)}
.pz-pomoc-close{height:44px;width:44px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink);display:grid;place-items:center;flex:none}
.pz-navrh-form{display:grid;gap:16px;padding:22px;min-width:0}
.pz-navrh-form h2{font-size:22px;line-height:1.35;margin:0}
.pz-navrh-form label{font-size:13px;font-weight:600;display:grid;gap:8px}
.pz-navrh-form textarea{min-height:150px;border:1px solid var(--line-strong);border-radius:14px;padding:14px;font-family:inherit;font-weight:400;font-size:16px;line-height:1.5;resize:vertical;max-width:100%;width:100%}
.pz-navrh-form .pz-attach{min-height:76px;border:1px dashed var(--line-strong);border-radius:14px;padding:16px;background:var(--panel-2);display:flex;align-items:center;gap:10px;cursor:pointer}
.pz-navrh-form .pz-attach input{max-width:100%;font:inherit}
.pz-navrh-form .pz-navrh-price{display:flex;gap:12px;align-items:center;justify-content:space-between;font-weight:700;font-size:22px}
.pz-navrh-form .pz-submit{min-height:52px;border-radius:14px;background:var(--lime);color:var(--ink);border:0;font-family:inherit;font-weight:600;font-size:14px;line-height:1.5;padding:12px 16px}
.pz-navrh-form .pz-form-status{font-size:12px;line-height:1.5;margin:0}
@media(min-width:901px){
 html.pz-ui-app[data-pz-step="1"] #pzFly{width:clamp(360px,31vw,480px)}
 html.pz-ui-app[data-pz-step="1"] #vyberLab{font-size:25px;line-height:1.25;font-weight:700;letter-spacing:-.02em;text-transform:none;color:var(--ink);margin:0 0 18px}
 html.pz-ui-app[data-pz-step="1"] .modely{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 html.pz-ui-app[data-pz-step="1"] .model{position:relative;display:flex;flex-direction:column;align-items:stretch;padding:0;gap:0;overflow:hidden}
 html.pz-ui-app[data-pz-step="1"] .model .md-foto{height:146px;width:100%;border-radius:0;background:#edf0ed}
 html.pz-ui-app[data-pz-step="1"] .model .md-foto img{height:100%;width:100%;object-fit:contain}
 html.pz-ui-app[data-pz-step="1"] .model .md-text{padding:12px 12px 6px;min-width:0;gap:5px}
 html.pz-ui-app[data-pz-step="1"] .model .md-cena{padding:0 12px 12px;text-align:left;gap:4px;align-items:flex-start;max-width:none}
 html.pz-ui-app[data-pz-step="1"] .model[aria-pressed=true]::after{content:"✓";position:absolute;right:9px;top:9px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:var(--ink);font-size:16px}
 html.pz-ui-app[data-pz-step="1"] .model .md-rozdil{display:none}
 html.pz-ui-app[data-pz-step="1"] .model .md-uroven{font-size:9px}
 html.pz-ui-app[data-pz-step="1"] :is(#sizeGrp,#qtyGrp),html.pz-ui-app[data-pz-step="2"] :is(#sizeGrp,#qtyGrp){display:none!important}
 html.pz-ui-app:not([data-pz-step="3"]) #buyBtn{display:none!important}
 html.pz-ui-app[data-pz-step="3"] #pzFly{display:none}
 html.pz-ui-app[data-pz-step="3"] #panelRight{width:clamp(390px,35vw,480px)}
 html.pz-ui-app[data-pz-step="3"] .sm-radky{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html.pz-ui-app[data-pz-step="3"] #buyBtn{position:fixed;right:24px;bottom:17px;min-height:52px!important;width:var(--pz-footer-button);z-index:45;box-shadow:0 3px 0 rgba(22,51,45,.14)}
 html.pz-ui-app[data-pz-step="3"] .pz-flow-desktop .pz-flow-actions{padding-right:calc(var(--pz-footer-button) + 20px)}
 html.pz-ui-app[data-pz-step="3"] .pz-flow-desktop .pz-flow-next{display:none}
}
@media(min-width:901px) and (max-width:1230px){
 html.pz-ui-app .topbar{gap:10px;padding-inline:16px}
 html.pz-ui-app .topbar #e04Open .e04-entry-text{display:none}
 html.pz-ui-app.pz-nove #pzRail{width:68px}
 html.pz-ui-app.pz-nove #pzRail button{width:56px;font-size:10px}
 html.pz-ui-app.pz-nove #pzFly{width:250px}
 html.pz-ui-app.pz-nove #panelRight{width:300px}
 html.pz-ui-app .pz-ui-summary-copy b{max-width:180px}
 html.pz-ui-app .pz-ui-summary-price{font-size:19px}
 html.pz-ui-app .pz-journey{min-height:64px}
}
@media(max-width:900px){
 html.pz-ui-app .topbar{min-height:58px;padding:6px 12px;gap:8px}
 html.pz-ui-app .topbar .brand img{width:132px!important}
 html.pz-ui-app .topbar .top-actions{gap:3px}
 html.pz-ui-app .topbar .ic{width:44px;height:44px;padding:10px}
 html.pz-ui-app .pz-journey{min-height:62px;padding:7px 8px;gap:9px;justify-content:center}
 html.pz-ui-app .pz-journey button{min-height:46px;flex:1 1 0;max-width:none;padding:6px 7px;gap:6px;justify-content:center;font-size:10px;line-height:1.35;border-radius:14px;min-width:0;text-align:left}
 html.pz-ui-app .pz-journey button b{width:23px;height:23px;font-size:10px}
 html.pz-ui-app .pz-journey button span{min-width:0;overflow-wrap:anywhere}
 html.pz-ui-app .pz-journey button:not(:last-child)::after{display:none}
 html.pz-ui-app body.m-app .stage-wrap{padding-top:54px;background:var(--bg)}
 html.pz-ui-app body.m-app #pzPohledy .view-toggle{width:100%;max-width:430px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-radius:14px;background:#fff!important;padding:3px;border:1px solid var(--line)}
 html.pz-ui-app body.m-app #pzPohledy .vt{width:auto!important;min-width:0;padding:7px 3px!important;white-space:normal!important;border-radius:11px!important;font-size:10px!important;min-height:44px!important;max-height:none!important;line-height:1.3;justify-content:center}
 html.pz-ui-app body.m-app #pzPohledy .vt.on{background:var(--tq-soft)!important;color:var(--ink);border:0;box-shadow:none}
 html.pz-ui-app body.m-app #pzPohledy button[aria-pressed]{grid-column:1/-1;min-height:44px!important;max-height:none!important;border:0!important;padding:8px!important;background:transparent!important;flex-basis:auto;font-size:11px!important}
 /* 24. 10. 2026 (Claude, převzetí od Codexu): list na telefonu měl max-height calc(100dvh - 65px) a při otevření panelu Obrázek nebo Text zakryl celé tričko (na iPhonu 390 × 664 plocha 22 × 32 px). Výška listu zůstává z editor.css (52dvh, panel Produkt 84dvh), aby tisková plocha byla při úpravách vidět. */
 html.pz-ui-app .m-sheet{border-radius:24px 24px 0 0;background:#fff;box-shadow:0 -8px 40px rgba(22,51,45,.12);overscroll-behavior:contain}
 html.pz-ui-app .m-sheet-head{padding:14px 16px 10px;gap:12px}
 html.pz-ui-app .m-sheet-head :is(button,.ic){min-height:44px;min-width:44px}
 html.pz-ui-app .m-sheet-body{padding:12px 16px 20px;overscroll-behavior:contain}
 html.pz-ui-app .pz-flow-mobile{padding:10px 16px;border-bottom:1px solid var(--line);gap:8px;flex-shrink:0}
 html.pz-ui-app .pz-flow-mobile .pz-flow-note{font-size:11px;line-height:1.5}
 html.pz-ui-app .pz-flow-mobile .pz-flow-actions{width:100%;gap:8px;display:flex}
 html.pz-ui-app .pz-flow-mobile .pz-flow-actions button{flex:1;min-width:0;min-height:44px;padding:10px;font-size:11px;box-shadow:none}
 html.pz-ui-app .pz-flow-mobile .pz-flow-next::after{margin-left:8px;font-size:17px}
 html.pz-ui-app .pz-flow-mobile .pz-flow-back::before{margin-right:6px}
 html.pz-ui-app body[data-mpane=produkt] .m-sheet{max-height:84vh;max-height:84dvh}
 html.pz-ui-app #mProdGrid .vyber-typy,html.pz-ui-app #mProdGrid .vyber-typy[data-typu]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;position:relative;top:auto;padding:0 0 12px;margin:0}
 html.pz-ui-app #mProdGrid .vyber-typ{min-height:52px;padding:8px 4px}
 html.pz-ui-app #mProdGrid .vyber-typ b{font-size:11px}
 html.pz-ui-app #mProdGrid .typ-cena{font-size:10px}
 html.pz-ui-app #mProdGrid .modely{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 html.pz-ui-app #mProdGrid .model{position:relative;display:flex;flex-direction:column;align-items:stretch;padding:0;gap:0;overflow:hidden;border-radius:15px}
 html.pz-ui-app #mProdGrid .model .md-foto{width:100%;height:118px;border-radius:0;background:#edf0ed}
 html.pz-ui-app #mProdGrid .model .md-foto img{width:100%;height:100%;object-fit:contain}
 html.pz-ui-app #mProdGrid .model .md-text{padding:10px 10px 4px;max-width:none;gap:4px}
 html.pz-ui-app #mProdGrid .model .md-uroven{font-size:9px;color:var(--tq-deep)}
 html.pz-ui-app #mProdGrid .model .md-nazev{font-size:12px;line-height:1.4;white-space:normal}
 html.pz-ui-app #mProdGrid .model .md-duvod{font-size:10px;line-height:1.5;white-space:normal;-webkit-line-clamp:3}
 html.pz-ui-app #mProdGrid .model .md-cena{padding:0 10px 12px;text-align:left;align-items:flex-start;gap:4px}
 html.pz-ui-app #mProdGrid .model .md-kc{font-size:14px}
 html.pz-ui-app #mProdGrid .model .md-bez{font-size:10px;line-height:1.4}
 html.pz-ui-app #mProdGrid .model .md-rozdil{display:none}
 html.pz-ui-app #mProdGrid .model[aria-pressed=true]::after{content:"✓";position:absolute;right:7px;top:7px;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:var(--ink);font-size:15px}
 html.pz-ui-app .m-dock{border-top:1px solid var(--line);box-shadow:0 -6px 24px rgba(22,51,45,.045);padding-bottom:env(safe-area-inset-bottom,0px);background:#fff}
 html.pz-ui-app .m-shrn{padding:8px 12px;gap:10px}
 html.pz-ui-app .m-shrn-info{gap:8px;min-height:48px}
 html.pz-ui-app .m-shrn-foto{border-radius:9px;height:44px;width:34px}
 html.pz-ui-app .m-shrn-text b{font-size:12px;line-height:1.35;-webkit-line-clamp:2}
 html.pz-ui-app .m-shrn-detail{font-size:10px;line-height:1.4;-webkit-line-clamp:1}
 html.pz-ui-app .m-shrn-cena b{font-size:16px;line-height:1.3}
 html.pz-ui-app .m-shrn .m-buy{min-width:112px;max-width:40%;min-height:48px;padding:9px 12px;border-radius:13px;white-space:normal;font-size:12px;background:var(--lime);color:var(--ink)}
 html.pz-ui-app .mobile-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;padding:4px 10px 6px!important;border:0!important}
 html.pz-ui-app .mobile-tabs button{min-height:44px!important;font-size:11px!important;gap:6px!important;padding:6px!important;border-radius:11px!important;white-space:normal}
 html.pz-ui-app .mobile-tabs button i{font-size:20px!important}
 html.pz-ui-app .mobile-tabs :is(#mTabProdukt,#mTabBarva,#mTabVelikost){display:none!important}
 html.pz-ui-app .m-sheet-foot{padding:10px 16px max(12px,env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}
 html.pz-ui-app .m-sheet-foot .m-buy{min-height:48px;border-radius:13px}
 html.pz-ui-app .m-akce button{min-height:44px;min-width:44px}
 html.pz-ui-app .m-start button{min-height:76px;border-radius:15px!important;padding:16px 8px!important}
 html.pz-ui-app .m-start button b{font-size:12px!important;line-height:1.5}
 html.pz-ui-app .sm-radky{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 html.pz-ui-app .sm-krok{width:100%!important}
 html.pz-ui-app .sm-krok button{min-width:44px!important;flex:0 0 44px}
 html.pz-ui-app .sm-krok input{flex:1;min-width:24px!important;width:100%!important;font-size:16px!important}
 html.pz-ui-app .pz-review{padding:14px;border-radius:14px;margin-top:14px}
 html.pz-ui-app .pz-review-actions{grid-template-columns:1fr!important}
 .pz-pomoc{padding:18px 16px 22px}
 .pz-pomoc-card{padding:15px 12px;gap:10px;grid-template-columns:40px minmax(0,1fr);min-height:90px}
 .pz-pomoc-card .pz-pomoc-title{font-size:13px;line-height:1.45}
 .pz-pomoc-card [data-pz-popis],.pz-pomoc-card [data-pz-lhuta]{font-size:12px;line-height:1.5}
 .pz-pomoc-card [data-pz-cena]{font-size:18px}
 .pz-pomoc-sheet{margin:auto 0 0;max-width:none;border:0;border-radius:24px 24px 0 0;max-height:calc(100dvh - 40px);padding-bottom:env(safe-area-inset-bottom,0px)}
 .pz-navrh-form{padding:20px 16px;gap:15px}
 .pz-navrh-form textarea{max-height:35dvh}
}
@media(max-width:370px){html.pz-ui-app .topbar .brand img{width:120px!important}html.pz-ui-app .pz-journey{gap:3px}html.pz-ui-app .pz-journey button{font-size:9px;padding-inline:5px;gap:4px}html.pz-ui-app .m-shrn{gap:7px}html.pz-ui-app .m-shrn .m-buy{min-width:100px}html.pz-ui-app #mProdGrid .model .md-foto{height:108px}}

.pz-pomoc .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Kompaktní přepínač a fotografie z existujícího náhledu. */
html.pz-ui-app #viewToggle button[aria-pressed]{flex-basis:auto!important;max-width:300px;min-height:44px!important;line-height:1.4}
html.pz-ui-app .pz-ui-summary-photo{object-fit:contain}
html.pz-ui-app .pz-ui-summary-photo[hidden]{display:none}

/* Pomoc před doplňkovými odkazy, barvy v dosažitelné kompaktní řadě. */
@media(min-width:901px){
 html.pz-ui-app.pz-nove .konfig{gap:14px;padding:20px}
 html.pz-ui-app.pz-nove .pz-prod p{font-size:11px;line-height:1.5}
 html.pz-ui-app.pz-nove .pz-zmenit{min-height:44px;line-height:1.4}
 html.pz-ui-app.pz-nove .konfig .swatches{flex-wrap:wrap;overflow:visible;max-width:100%;gap:5px;padding:4px}
 html.pz-ui-app.pz-nove .konfig .sw{flex:0 0 44px}
 html.pz-ui-app .konfig>.pz-pomoc{padding:18px 0 0}
 html.pz-ui-app .konfig>.pz-pomoc .pz-pomoc-head{justify-content:flex-start}
 html.pz-ui-app .pz-pomoc-card .pz-pomoc-title{font-size:13px}
 html.pz-ui-app .pz-pomoc-card{min-height:90px}
}
@media(min-width:1231px){html.pz-ui-app[data-pz-step="2"] #panelRight{width:370px}}

@media(min-width:901px){html.pz-ui-app.pz-nove .konfig{z-index:auto}}
/* Barva zůstává dosažitelná i na mobilu, produkt a velikosti jsou v horních třech krocích. */
@media(max-width:900px){
 html.pz-ui-app .mobile-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}
 html.pz-ui-app .mobile-tabs #mTabBarva{display:flex!important;order:4}
}

/* Úzký viditelný slider, velká dotyková plocha; paleta a formátování zůstávají dosažitelné. */
html.pz-ui-app .props input[type=range]{height:44px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0;-webkit-appearance:none;appearance:none}
html.pz-ui-app .props input[type=range]::-webkit-slider-runnable-track{height:5px;background:#cfddd5;border-radius:3px}
html.pz-ui-app .props input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-7.5px;background:var(--tq-deep);border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #9bb5aa}
html.pz-ui-app .props input[type=range]::-moz-range-track{height:5px;background:#cfddd5;border-radius:3px}
html.pz-ui-app .props input[type=range]::-moz-range-thumb{height:16px;width:16px;background:var(--tq-deep);border:3px solid #fff;border-radius:50%}
html.pz-ui-app .props .row{flex-wrap:wrap;gap:6px}
html.pz-ui-app .props button.ic{height:44px;min-width:44px;border-radius:10px}
html.pz-ui-app .props .swatches{flex-wrap:wrap;gap:4px}
html.pz-ui-app .props .swatches .sw{width:44px;height:44px;min-width:44px;border:7px solid #fff;box-shadow:inset 0 0 0 1px rgba(22,51,45,.20);border-radius:12px}

html.pz-ui-app .pz-ui-price-qualifier{display:block;font-size:10px;font-weight:400;line-height:1.45;max-width:220px;white-space:normal;margin-top:3px;color:var(--muted)}

/* Jediná hlavní akce v zavřeném mobilním panelu. Původní lišta i handlery zůstávají. */
@media(max-width:900px){
 html.pz-ui-app .m-dock{order:4}
 /* 24. 10. 2026 (Claude, převzetí od Codexu): tlačítko Uložit návrh zůstává na telefonu vidět v horní liště jako ikona (živý stav dnes). Sběr e-mailu a uložení návrhu viselo na skryté ikoně už v září 2026 a stálo nás uložené návrhy (paměť trychtýř 9/2026). */
 html.pz-ui-app #e04Open{padding:8px!important;width:44px;height:44px;min-width:44px}
 html.pz-ui-app #e04Open .pz-ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
 html.pz-ui-app .m-shrn>.pz-flow-desktop{display:flex;min-height:0;padding:0;border:0;box-shadow:none;background:none;flex:none;gap:0}
 html.pz-ui-app .m-shrn>.pz-flow-desktop .pz-ui-summary,html.pz-ui-app .m-shrn>.pz-flow-desktop .pz-flow-back{display:none!important}
 html.pz-ui-app .m-shrn>.pz-flow-desktop .pz-flow-actions{padding:0;gap:0}
 html.pz-ui-app .m-shrn>.pz-flow-desktop .pz-flow-next{min-width:0;width:126px;min-height:48px;padding:9px 10px;line-height:1.4;font-size:11px;box-shadow:none;display:block}
 html.pz-ui-app .m-shrn>.pz-flow-desktop .pz-flow-next::after{margin-left:6px;font-size:16px}
 html.pz-ui-app[data-pz-step="3"] .m-shrn>.pz-flow-desktop{display:none}
 html.pz-ui-app:not([data-pz-step="3"]) #mBuy{display:none}
 html.pz-ui-app .m-shrn-cena{max-width:78px}
 html.pz-ui-app .m-shrn-cena small{white-space:normal;text-align:right;font-size:9px;line-height:1.35}
}

/* Formulář se smí zúžit i pod nativní šířku file inputu a delší překlady. */
.pz-navrh-form{grid-template-columns:minmax(0,1fr)}
.pz-navrh-form>*{min-width:0}
.pz-navrh-form .pz-pomoc-head h2{min-width:0;overflow-wrap:anywhere;flex:1}
.pz-navrh-form .pz-attach{display:grid;grid-template-columns:24px minmax(0,1fr)}
.pz-navrh-form .pz-attach input{grid-column:1/-1;width:100%;min-width:0;font-size:12px}
.pz-navrh-form .pz-navrh-price{flex-wrap:wrap}
.pz-navrh-form .pz-navrh-price small{font-size:12px;font-weight:400;line-height:1.5}

@media(max-width:900px){
 html.pz-ui-app .m-shrn-cena small:not(.pz-ui-mobile-price-note){display:none!important}
 html.pz-ui-app .m-shrn-cena .pz-ui-mobile-price-note{display:block!important;max-width:78px;white-space:normal;font-size:9px;line-height:1.4;text-align:right}
}

.pz-pomoc-remove{min-height:44px;border:1px solid var(--line-strong);border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:12px;padding:10px 14px;cursor:pointer}
.pz-pomoc-remove[hidden]{display:none!important}

/* Adam23.10: stálé plátno, nástroje v zásuvkách, tekutý skleněný indikátor. */
html.pz-ui-app .pz-journey{isolation:isolate;align-self:center;flex:none;gap:4px;margin:6px auto 8px;min-height:54px;padding:5px;background:rgba(230,239,235,.9);border:1px solid rgba(255,255,255,.9);border-radius:999px;box-shadow:inset 0 1px 0 #fff,0 3px 12px rgba(22,51,45,.045);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html.pz-ui-app .pz-journey button{z-index:1;min-height:44px;padding:6px 17px 6px 7px;border:0;background:transparent;box-shadow:none;font-size:12px}
html.pz-ui-app .pz-journey button[aria-current]{border:0;background:transparent;box-shadow:none}
html.pz-ui-app .pz-journey button::after{display:none!important}
.pz-glass-indicator{position:absolute;left:0;top:0;width:100px;z-index:0;pointer-events:none;border:1px solid rgba(255,255,255,.98);border-radius:999px;background:linear-gradient(150deg,rgba(255,255,255,.97),rgba(255,255,255,.72));box-shadow:0 3px 8px rgba(22,51,45,.10),inset 0 1px 0 #fff;transform-origin:left center}
html.pz-ui-app .pz-ui-panel-close{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);cursor:pointer}
html.pz-ui-app .pz-ui-panel-close .pz-ic,html.pz-ui-app .pz-ui-config-open .pz-ic,html.pz-ui-app .pz-ui-help-open .pz-ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html.pz-ui-app .pz-ui-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;flex:none;padding:10px 12px 10px 20px;border-bottom:1px solid var(--line);background:#fff}
html.pz-ui-app .pz-ui-drawer-head h2{font-size:14px;line-height:1.4;font-weight:600;margin:0;min-width:0;overflow-wrap:anywhere}
html.pz-ui-app .pz-ui-config-tools{position:absolute;top:18px;right:18px;display:flex;gap:8px;z-index:20}
html.pz-ui-app .pz-ui-config-open,html.pz-ui-app .pz-ui-help-open{min-height:48px;border:1px solid rgba(255,255,255,.95);border-radius:999px;background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 3px 16px rgba(22,51,45,.08),inset 0 1px 0 #fff;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:flex;align-items:center;gap:9px;padding:8px 16px;font:600 12px/1.4 var(--font);cursor:pointer}
html.pz-ui-app .pz-ui-help-open{width:48px;padding:0;justify-content:center}
html.pz-ui-app .pz-ui-help-open[hidden]{display:none!important}
html.pz-ui-app .pz-ui-drawer-head[hidden],html.pz-ui-app .pz-ui-config-tools[hidden]{display:none!important}
html.pz-ui-app #viewToggle{isolation:isolate}
html.pz-ui-app #viewToggle .pz-glass-indicator{background:linear-gradient(150deg,#fff,rgba(255,255,255,.86))}
html.pz-ui-app #viewToggle button[aria-pressed]::before{display:none!important}
html.pz-ui-app .pz-glass-switch{width:42px;height:26px;flex:none;border-radius:999px;padding:2px;display:block;position:relative;background:linear-gradient(145deg,#9db5ae,#bccfc7);box-shadow:inset 0 1px 3px rgba(22,51,45,.16),inset 0 0 0 1px rgba(255,255,255,.9)}
html.pz-ui-app .pz-glass-switch>span{position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:radial-gradient(circle at 34% 25%,#fff 0%,#fff 24%,#f1f7f3 55%,#d4e1d9 100%);box-shadow:0 2px 3px rgba(22,51,45,.22),inset 0 1px 1px #fff;transform:translateX(0)}
html.pz-ui-app [aria-pressed=true]>.pz-glass-switch{background:linear-gradient(145deg,#a9c653,#dceba5)}
html.pz-ui-app [aria-pressed=true]>.pz-glass-switch>span{transform:translateX(16px);background:radial-gradient(circle at 34% 25%,#fff 0%,#f8ffe8 20%,#e6f4bd 55%,#bdd873 100%)}
@media(min-width:901px){
 html.pz-ui-app .topbar{min-height:62px;padding:8px 20px;border-bottom:0}
 html.pz-ui-app .workspace{position:relative;overflow:hidden}
 html.pz-ui-app.pz-nove #pzRail{position:absolute;left:14px;top:14px;bottom:14px;width:76px;padding:8px 4px;gap:4px;border:1px solid rgba(255,255,255,.95);border-radius:25px;background:rgba(255,255,255,.94);box-shadow:0 5px 24px rgba(22,51,45,.06);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);z-index:30}
 html.pz-ui-app.pz-nove #pzRail button{width:66px;min-height:60px;border-radius:19px}
 html.pz-ui-app.pz-nove #pzFly,html.pz-ui-app.pz-nove[data-pz-step="1"] #pzFly,html.pz-ui-app.pz-nove[data-pz-step="3"] #pzFly{display:flex!important;position:absolute;left:104px;top:14px;bottom:14px;width:340px;z-index:45;transform:translateX(0);opacity:1;visibility:visible;pointer-events:auto;border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 40px rgba(22,51,45,.12);background:#fff}
 html.pz-ui-app.pz-nove.pz-fly-zavreny #pzFly{transform:translateX(calc(-100% - 110px));opacity:0;visibility:hidden;pointer-events:none}
 html.pz-ui-app.pz-nove #pzFly>.pz-pane>h2,html.pz-ui-app.pz-nove #pzFly #vyberLab{display:none}
 html.pz-ui-app.pz-nove #pzFly>section.pz-pane,html.pz-ui-app.pz-nove #pzFly>.panel-left.pz-pane{padding:16px}
 html.pz-ui-app.pz-nove #panelRight,html.pz-ui-app.pz-nove[data-pz-step] #panelRight{display:flex;flex-direction:column;position:absolute;right:14px;top:14px;bottom:14px;width:350px;z-index:45;transform:translateX(0);opacity:1;visibility:visible;border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 40px rgba(22,51,45,.12);overflow:hidden;background:#fff}
 html.pz-ui-app.pz-config-closed.pz-nove #panelRight{transform:translateX(calc(100% + 20px));opacity:0;visibility:hidden;pointer-events:none}
 html.pz-ui-app.pz-nove #panelRight>.konfig{overflow-y:auto;flex:1;min-height:0;padding:18px}
 html.pz-ui-app.pz-nove .stage-wrap{width:100%;flex:1;margin:0}
 html.pz-ui-app.pz-nove .stage-scroll{padding:12px 100px 6px}
 html.pz-ui-app .stage{box-shadow:0 12px 40px rgba(22,51,45,.035)}
 html.pz-ui-app.pz-nove #pzPohledy{min-height:66px;padding:5px 250px 10px 100px}
 html.pz-ui-app.pz-nove #pzPohledy .view-toggle{position:relative;flex-wrap:nowrap;gap:0;max-width:100%;padding:4px;border:1px solid rgba(255,255,255,.98);border-radius:999px;background:rgba(225,236,230,.92)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:inset 0 1px 0 #fff,0 4px 14px rgba(22,51,45,.05)}
 html.pz-ui-app.pz-nove #pzPohledy .vt{z-index:1;width:auto;min-width:84px;min-height:44px;padding:8px 10px;gap:0;display:flex;flex-direction:row;border:0;border-radius:999px;background:transparent;box-shadow:none;font-size:11px}
 html.pz-ui-app.pz-nove #pzPohledy .vt.on{background:transparent;border:0;box-shadow:none;color:var(--ink)}
 html.pz-ui-app.pz-nove #pzPohledy .vt-img{display:none}
 html.pz-ui-app #viewToggle button[aria-pressed]{min-width:0;max-width:260px;padding:7px 12px!important;flex:none!important;line-height:1.35;position:relative;z-index:1;background:transparent!important;border:0!important;font-size:10px!important}
 html.pz-ui-app.pz-nove #pzZoom{left:auto;right:16px;bottom:15px;top:auto;transform:none;display:flex;flex-direction:row;align-items:center;border:1px solid #fff;border-radius:999px;padding:4px;gap:1px;background:rgba(255,255,255,.94);z-index:25}
 html.pz-ui-app.pz-nove #pzZoom input[type=range]{display:none}
 html.pz-ui-app #pzZoom .pz-zoom-val{min-width:36px;font-size:10px}
 html.pz-ui-app.pz-nove #pzPill{position:absolute;left:50%;bottom:90px;transform:translateX(-50%);margin:0;z-index:22}
 html.pz-ui-app .pz-flow-desktop{min-height:76px;padding:10px 20px}
 html.pz-ui-app[data-pz-step="3"] .pz-flow-desktop .pz-flow-actions{padding-right:0}
 html.pz-ui-app .pz-flow-desktop #buyBtn{position:static!important;margin:0;min-height:50px!important;width:var(--pz-footer-button);flex:none}
}
@media(min-width:901px) and (max-width:1230px){
 html.pz-ui-app.pz-nove #pzPohledy{padding-right:16px}
 html.pz-ui-app.pz-nove #pzZoom{bottom:88px}
 html.pz-ui-app #viewToggle button[aria-pressed]{max-width:215px;font-size:9px!important}
}
@media(max-width:900px){
 html.pz-ui-app .pz-journey{width:calc(100% - 20px);margin:5px 10px 7px;gap:2px;padding:4px;min-height:54px;box-sizing:border-box}
 html.pz-ui-app .pz-journey button{flex:1;min-width:0;min-height:44px;padding:6px;font-size:10px}
 html.pz-ui-app .pz-journey button b{width:22px;height:22px}
 html.pz-ui-app .pz-ui-drawer-head,html.pz-ui-app .pz-ui-config-tools{display:none!important}
 html.pz-ui-app .mobile-tabs{position:relative!important;isolation:isolate;grid-template-columns:repeat(4,minmax(0,1fr))!important;margin:0 6px 7px!important;width:calc(100% - 12px)!important;padding:5px!important;border:1px solid rgba(255,255,255,.95)!important;border-radius:22px!important;background:rgba(232,240,235,.96)!important;box-shadow:inset 0 1px 0 #fff,0 4px 15px rgba(22,51,45,.05);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
 html.pz-ui-app .mobile-tabs button{position:relative;z-index:1;min-height:44px!important;background:transparent!important;border-radius:18px!important}
 html.pz-ui-app .mobile-tabs .pz-glass-indicator{border-radius:18px}
 html.pz-ui-app body.m-app #pzPohledy .view-toggle{isolation:isolate;position:relative;background:rgba(228,238,232,.95)!important;border:1px solid #fff;border-radius:999px;box-shadow:inset 0 1px 0 #fff}
 html.pz-ui-app body.m-app #pzPohledy .vt{z-index:1}
 html.pz-ui-app body.m-app #pzPohledy .vt.on{background:transparent!important;box-shadow:none}
}

@media(max-width:900px){html.pz-ui-app .pz-flow-desktop #buyBtn{display:none!important}}
/* Ovládání stran se od otevřené zásuvky odsune, samotné plátno zůstává stejné. */
@media(min-width:901px){
 html.pz-ui-app.pz-nove:not(.pz-fly-zavreny) #pzPohledy{padding-left:460px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPohledy{padding-left:100px;padding-right:380px}
 html.pz-ui-app.pz-nove #pzPill{overflow-x:auto;max-width:calc(100% - 140px);flex-wrap:nowrap;white-space:nowrap}
 html.pz-ui-app.pz-nove:not(.pz-fly-zavreny) #pzPill{left:calc(50% + 220px);max-width:calc(100% - 492px)}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPill{left:calc(50% - 140px);max-width:calc(100% - 500px)}
}
@media(min-width:1360px){
 html.pz-ui-app .app{position:relative}
 html.pz-ui-app .pz-journey{position:absolute;left:50%;top:6px;transform:translateX(-50%);margin:0;min-height:50px;padding:4px;z-index:50}
}
html.pz-ui-app #viewToggle .vt::before{display:none!important}
/* Původní krátkou pobídku odsunout od přepínání stran; původní zavření i handler zůstávají. */
html.pz-ui-app .nudge{left:112px;right:auto;bottom:160px;max-width:300px;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--ink);box-shadow:0 6px 24px rgba(22,51,45,.10);transform:translateY(6px);z-index:20;gap:10px}
html.pz-ui-app .nudge.in{transform:translateY(0)}
html.pz-ui-app .nudge span{color:var(--ink);font-size:11px}
html.pz-ui-app .nudge button{min-height:44px;font-size:11px}
/* Stejný objem přepínače v původním mobilním ovládání. */
html.pz-ui-app .m-ks-sw{width:42px!important;height:26px!important;border-radius:999px!important;background:linear-gradient(145deg,#9db5ae,#bccfc7)!important;box-shadow:inset 0 1px 3px rgba(22,51,45,.16),inset 0 0 0 1px #fff}
html.pz-ui-app .m-ks-sw::after{left:3px!important;top:3px!important;width:20px!important;height:20px!important;background:radial-gradient(circle at 34% 25%,#fff,#f1f7f3 55%,#d4e1d9)!important;box-shadow:0 2px 3px rgba(22,51,45,.22);transform:translateX(0)}
html.pz-ui-app .m-ks.on .m-ks-sw{background:linear-gradient(145deg,#a9c653,#dceba5)!important}
html.pz-ui-app .m-ks.on .m-ks-sw::after{transform:translateX(16px);background:radial-gradient(circle at 34% 25%,#fff,#e6f4bd 55%,#bdd873)!important}
/* Skutečná mobilní větev má viewToggle přímo v původní stage-toolbar, bez pzPohledy. */
html.pz-ui-app #viewToggle>.vt{position:relative;z-index:1!important}
html.pz-ui-app #viewToggle>.vt.on{color:var(--ink)!important}
@media(max-width:900px){
 html.pz-ui-app body.m-app #viewToggle{position:relative;isolation:isolate;background:rgba(228,238,232,.96)!important;border:1px solid #fff;border-radius:999px;box-shadow:inset 0 1px 0 #fff;max-width:100%}
 html.pz-ui-app body.m-app #viewToggle>.vt{background:transparent!important;min-height:44px!important;color:var(--muted)}
 html.pz-ui-app body.m-app #viewToggle>.vt.on{background:transparent!important;color:var(--ink)!important}
}

/* 24. 10. 2026 (Claude, převzetí od Codexu): opravy vzhledu nalezené při převzetí, v zdrojích Codexu je třeba je převzít (ZPET-CODEXU-2026-10-24.md).
   1) Varování o motivu mimo plochu a o ostrosti obrázku (#presahWarn, #dpiWarn) leží v plátně přes celou šířku a zásuvky i lišta je na počítači zakrývaly
      (nebylo čitelné „Část motivu je mimo tiskovou plochu a nevytiskne se“ a tlačítko Vejít do plochy). Odsazení stejně jako u #pzPohledy.
   2) Cookie lišta při první návštěvě zakrývala hlavní tlačítko v patičce (Vybrat velikosti, Do košíku), na počítači je nad patičkou.
   3) Zoom je v kroku 3 vlevo od pravé zásuvky, ne pod ní. */
@media(min-width:901px){
 html.pz-ui-app.pz-nove #presahWarn,html.pz-ui-app.pz-nove #dpiWarn{margin-left:104px;margin-right:170px;max-width:none}
 html.pz-ui-app.pz-nove:not(.pz-fly-zavreny) #presahWarn,html.pz-ui-app.pz-nove:not(.pz-fly-zavreny) #dpiWarn{margin-left:460px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #presahWarn,html.pz-ui-app.pz-nove:not(.pz-config-closed) #dpiWarn{margin-right:376px}
 html.pz-ui-app #pzCookie{bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzZoom{right:380px}
}

/* 24. 10. 2026 (Claude, převzetí; kontrola logiky): další opravy vzhledu pro Codex (ZPET-CODEXU-2026-10-24.md).
   4) overflow:clip na pracovní ploše: scrollIntoView z editor.js ji už neposouvá (N2).
   5) Bublina „Vypadá to dobře? Do košíku“ ležela pod levou zásuvkou (z-index 20 proti 45), je vpravo nad zoomem a v kroku 3 se schová (N7).
   6) Stav „Vyberte velikost“ (obrysové tlačítko, rozhodnutí z 15. 10.) přebíjelo pravidlo se zeleným pozadím (N8). */
@media(min-width:901px){
 html.pz-ui-app .workspace,html.pz-ui-app.pz-nove .stage-wrap{overflow:hidden;overflow:clip}
 html.pz-ui-app .nudge{left:auto;right:16px;bottom:226px;z-index:46}   /* nad plovoucí lištou vybraného prvku (bottom 90 px), ta sahá doprava až do 1207 px */
 html.pz-ui-app:not(.pz-config-closed) .nudge{display:none!important}
}
html.pz-ui-app #buyBtn.ceka-vel{background:#f3f6e6!important;color:#16332d!important;box-shadow:inset 0 0 0 2px #9aad52}
/* provázení „Jak to funguje“: zásuvky se přepínají bez přechodu, ať se zvýraznění měří na hotové poloze */
html.pz-ui-app.pz-tour #panelRight,html.pz-ui-app.pz-tour #pzFly{transition:none!important}

/* 24. 10. 2026 (Adam: velká upozornění o ostrosti obrázku a o přesahu zabírají moc místa, chce hezké karty, které jdou zavřít; Claude, DOČASNÝ vzhled
   k převzetí Codexem, viz ZPET-CODEXU): #dpiWarn a #presahWarn jsou plovoucí karty nad plátnem místo pruhů v toku (plátno už nepodskočí), křížek je z pz-pohyb.js.
   Obsah (věty, tlačítka Vylepšit AI, Zmenšit, Vejít do plochy) kreslí editor.js beze změny, tady je jen vzhled. Pohyb: stejné pz-sheet-in jako okna Pomoci. */
html.pz-ui-app :is(#dpiWarn,#presahWarn):not([hidden]){position:absolute;z-index:44;box-sizing:border-box;margin:0!important;max-width:none;padding:14px 44px 14px 58px;border:1px solid var(--line);border-left:4px solid #d9a63a;border-radius:var(--pz-radius,18px);background:#fff!important;color:var(--ink);box-shadow:0 12px 32px rgba(22,51,45,.16);font-size:13px;line-height:1.45;animation:pz-sheet-in var(--pz-enter,280ms) var(--pz-ease,ease)}
html.pz-ui-app :is(#dpiWarn,#presahWarn).spatne:not([hidden]){border-left-color:var(--danger)}
html.pz-ui-app :is(#dpiWarn,#presahWarn):not([hidden])::before{content:"!";position:absolute;left:14px;top:14px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fbefcb;color:#7a5410;font:800 17px/1 var(--font,sans-serif)}
html.pz-ui-app :is(#dpiWarn.spatne,#dpiWarn.mekce):not([hidden])::before{content:"";background:#fbefcb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a5410' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Ccircle cx='9' cy='11' r='1.6'/%3E%3Cpath d='M21 16l-5-5-8 8'/%3E%3C/svg%3E") center/20px no-repeat}
html.pz-ui-app #dpiWarn.spatne:not([hidden])::before{background-color:#f7d9d3}
html.pz-ui-app :is(#dpiWarn,#presahWarn)[data-pz-zavreno]{display:none!important}
html.pz-ui-app :is(#dpiWarn,#presahWarn) b{display:block;font-size:14px;line-height:1.35;color:var(--ink)}
html.pz-ui-app #presahWarn br{display:none}
html.pz-ui-app #presahWarn:not([hidden])>button{margin:8px 8px 0 0}
html.pz-ui-app #dpiWarn.pz-dpi:not([hidden]){display:flex;flex-wrap:wrap;gap:4px 10px}
html.pz-ui-app #dpiWarn .pz-dpi-hl{flex:1 1 100%;font-size:12.5px;color:var(--muted)}
html.pz-ui-app #dpiWarn .pz-dpi-hl span{opacity:1;white-space:normal}
html.pz-ui-app #dpiWarn .pz-dpi-veta{display:none}   /* věta o vylepšení se v kartě opakuje s tlačítkem */
html.pz-ui-app #dpiWarn .pz-dpi-tl{flex:1 1 100%;gap:8px;margin-top:6px}
html.pz-ui-app :is(#dpiWarn,#presahWarn) button:not(.pz-karta-x){min-height:40px;margin:0;padding:0 16px;border-radius:12px;border:1px solid var(--line-strong);background:#fff;color:var(--ink);font:700 12.5px/1.2 var(--font,sans-serif);cursor:pointer}
html.pz-ui-app :is(#dpiWarn,#presahWarn) :is(.pz-dpi-hlavni,.dpi-vyl.hlavni,#dpiJit,#presahKs,#presahFix,#presahJit,#motivFix,#motivJit){background:var(--ink);border-color:var(--ink);color:#fff}
html.pz-ui-app #presahWarn #presahKs~#presahFix{background:#fff;border-color:var(--line-strong);color:var(--ink)}   /* nabídka příplatku: Souhlasím je hlavní, Vrátit do standardní plochy vedlejší */
html.pz-ui-app #dpiWarn.pz-dpi .pz-dpi-zvoleno{background:var(--lime);border-color:var(--lime);color:var(--ink)}
html.pz-ui-app #dpiWarn.pz-dpi .pz-dpi-hlavni:not(.pz-dpi-zvoleno) i{color:var(--lime)}
html.pz-ui-app #dpiWarn.pz-dpi button.pz-dpi-male{min-height:40px;padding:0 8px;border-color:transparent;background:none;color:var(--tq-deep);font-weight:600;text-decoration:underline;text-underline-offset:3px}
html.pz-ui-app :is(#dpiWarn,#presahWarn) button:not(.pz-karta-x):focus-visible{outline:3px solid var(--tq-deep);outline-offset:2px}
html.pz-ui-app :is(#dpiWarn,#presahWarn) button.pz-karta-x{position:absolute;right:8px;top:8px;display:grid;place-items:center;width:36px;height:36px;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%;background:transparent!important;color:var(--muted)!important;font:400 24px/1 var(--font,sans-serif)!important;text-decoration:none!important;cursor:pointer}
html.pz-ui-app :is(#dpiWarn,#presahWarn) button.pz-karta-x:hover{background:var(--panel-2)!important;color:var(--ink)!important}
html.pz-ui-app :is(#dpiWarn,#presahWarn) button.pz-karta-x:focus-visible{outline:3px solid var(--tq-deep);outline-offset:1px}
@media(min-width:901px){
 html.pz-ui-app.pz-nove :is(#dpiWarn,#presahWarn):not([hidden]){left:104px;width:min(560px,calc(100% - 104px - 170px))}
 html.pz-ui-app.pz-nove:not(.pz-fly-zavreny) :is(#dpiWarn,#presahWarn):not([hidden]){left:460px;width:min(560px,calc(100% - 460px - 170px))}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) :is(#dpiWarn,#presahWarn):not([hidden]){width:min(560px,calc(100% - 104px - 376px))}
 html.pz-ui-app.pz-nove:not(.pz-fly-zavreny):not(.pz-config-closed) :is(#dpiWarn,#presahWarn):not([hidden]){width:min(560px,calc(100% - 460px - 376px))}
 html.pz-ui-app :is(#dpiWarn,#presahWarn):not([hidden]){top:12px}
 html.pz-ui-app #presahWarn:not([hidden]){top:calc(12px + var(--pz-dpi-h,0px))}
}
@media(max-width:900px){
 /* telefon: karta leží pod pilulkami stran přes horní část plochy, ať ji nezakryje spodní list (dpiWarn je v něm, ale kreslí se nahoře); je nízká a jde zavřít.
    Druhotné „Nahrát lepší soubor“ a „Poslat k posouzení“ tu nejsou (jsou v listu Upravit kvalitu), ať karta nezakryje celé tričko. */
 html.pz-ui-app :is(#dpiWarn,#presahWarn):not([hidden]){position:fixed;left:8px;right:8px;width:auto;top:var(--pz-karty-top,186px);z-index:96;padding:10px 40px 10px 50px;font-size:12px;line-height:1.35}
 html.pz-ui-app #presahWarn:not([hidden]){top:calc(var(--pz-karty-top,186px) + var(--pz-dpi-h,0px))}
 html.pz-ui-app :is(#dpiWarn,#presahWarn):not([hidden])::before{left:10px;top:10px;width:30px;height:30px}
 html.pz-ui-app :is(#dpiWarn,#presahWarn) b{display:inline;font-size:13px}
 html.pz-ui-app #dpiWarn .pz-dpi-hl{flex:1 1 100%}
 html.pz-ui-app #dpiWarn .pz-dpi-veta,html.pz-ui-app #dpiWarn #dpiNahrat,html.pz-ui-app #dpiWarn #dpiPoptat{display:none}
 html.pz-ui-app :is(#dpiWarn,#presahWarn) button:not(.pz-karta-x){min-height:40px;padding:0 12px}
 html.pz-ui-app #dpiWarn .pz-dpi-tl{margin-top:2px}
 html.pz-ui-app #dpiWarn.pz-dpi .pz-dpi-tl button{flex:1 1 calc(50% - 4px);min-width:0}
 html.pz-ui-app #dpiWarn.pz-dpi .pz-dpi-tl button.pz-dpi-hlavni{flex-basis:100%}
 html.pz-ui-app #presahWarn:not([hidden])>button{margin:6px 8px 0 0}
 html.pz-ui-app :is(#dpiWarn,#presahWarn) button.pz-karta-x{right:4px;top:4px}
 html.pz-ui-app #mDpiSlot:has(#dpiWarn:not([hidden])){min-height:0}
}

/* Adam 24.10.2026 — hravý povrch ovladačů. Žádná tisková geometrie ani logika. */
html.pz-ui-app{--pz-button-edge:#a2b446;--pz-glass-edge:rgba(255,255,255,.96);--pz-icon-tile:linear-gradient(145deg,#fff 0%,#f8fcfa 45%,#dcebe4 100%)}
html.pz-ui-app .pz-flow-next,html.pz-ui-app .m-buy,html.pz-ui-app #buyBtn{position:relative;isolation:isolate;overflow:hidden;border:1px solid #afc254;background:linear-gradient(160deg,#e0ed9e 0%,#c9dd68 54%,#bcd25b 100%);color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(22,51,45,.06),0 4px 0 var(--pz-button-edge),0 7px 14px rgba(93,118,34,.13);text-shadow:0 1px 0 rgba(255,255,255,.3)}
html.pz-ui-app .m-shrn>.pz-flow-desktop .pz-flow-next{box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 3px 0 var(--pz-button-edge),0 5px 10px rgba(93,118,34,.12)}
html.pz-ui-app #buyBtn.ceka-vel{background:linear-gradient(150deg,#f9fbed,#edf3cf)!important;box-shadow:inset 0 0 0 1px #9aad50,inset 0 1px 0 #fff,0 3px 0 #c3cd9c}
html.pz-ui-app .pz-flow-next::before,html.pz-ui-app .m-buy::before,html.pz-ui-app #buyBtn::before{content:"";position:absolute;z-index:0;inset:0 auto 0 0;width:36%;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.52),transparent);transform:translateX(-160%) skewX(-16deg);opacity:0}
html.pz-ui-app .pz-flow-next:disabled,html.pz-ui-app .m-buy:disabled,html.pz-ui-app #buyBtn:disabled{box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 1px 0 #b8c48c;transform:none;opacity:.55}
html.pz-ui-app .pz-flow-next:disabled::before,html.pz-ui-app .m-buy:disabled::before,html.pz-ui-app #buyBtn:disabled::before{display:none}
html.pz-ui-app :is(.pz-flow-back,.btn-ulozit,.pz-start-options button,.pz-ui-config-open,.pz-ui-panel-close){background:linear-gradient(160deg,#fff,#f2f8f5);box-shadow:inset 0 1px 0 #fff,0 2px 0 #d4e1da,0 4px 10px rgba(22,51,45,.05)}
html.pz-ui-app .pz-ui-panel-close{border-color:#d2ded7}
html.pz-ui-app .pz-journey{background:linear-gradient(140deg,rgba(240,248,244,.98),rgba(215,233,224,.82));box-shadow:inset 0 2px 0 #fff,inset 0 -1px 0 rgba(139,168,154,.15),0 5px 15px rgba(22,51,45,.06)}
html.pz-ui-app .pz-journey button b{background:linear-gradient(140deg,#fff,#e9f2ed);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(22,51,45,.06)}
html.pz-ui-app .pz-journey button[aria-current] b{background:linear-gradient(145deg,#36706a,#16332d);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 2px 3px rgba(22,51,45,.17);color:#fff}
html.pz-ui-app .pz-glass-indicator{background:linear-gradient(145deg,#fff 0%,rgba(255,255,255,.98) 42%,rgba(236,246,240,.94) 100%);border-color:#fff;box-shadow:inset 0 2px 0 #fff,inset 0 -2px 2px rgba(160,185,172,.12),0 3px 6px rgba(22,51,45,.13)}
html.pz-ui-app .pz-glass-switch{background:linear-gradient(160deg,#c2d4ca,#e3eee7);border:1px solid #b0c8bc;box-shadow:inset 0 2px 4px rgba(22,51,45,.2),inset 0 -1px 0 #fff,0 1px 0 #fff}
html.pz-ui-app .pz-glass-switch::after{content:"";position:absolute;inset:-3px;border:1px solid #b8cf5e;border-radius:inherit;box-shadow:0 0 7px rgba(176,203,73,.28);pointer-events:none;opacity:0}
html.pz-ui-app .pz-glass-switch>span{left:2px;top:2px;background:radial-gradient(circle at 33% 22%,#fff 0%,#fff 20%,#f4f9f6 48%,#c3d8cb 100%);box-shadow:0 3px 4px rgba(22,51,45,.27),inset 0 1px 1px #fff,inset 0 -1px 2px rgba(22,51,45,.12)}
html.pz-ui-app .pz-glass-switch>span::after{content:"";position:absolute;inset:5px;border:1px solid rgba(36,83,69,.2);border-radius:50%;box-shadow:inset 0 1px 0 #fff}
html.pz-ui-app [aria-pressed=true]>.pz-glass-switch{background:linear-gradient(160deg,#a7c63a,#d8ed82);border-color:#a2bc45}
html.pz-ui-app [aria-pressed=true]>.pz-glass-switch::after{opacity:1}
html.pz-ui-app [aria-pressed=true]>.pz-glass-switch>span{background:radial-gradient(circle at 33% 22%,#fff 0%,#fff 25%,#f8ffe9 55%,#d0e2a0 100%)}
html.pz-ui-app .m-ks-sw{box-shadow:inset 0 2px 4px rgba(22,51,45,.23),inset 0 -1px 0 #fff,0 1px 0 #fff!important}
html.pz-ui-app .m-ks.on .m-ks-sw{box-shadow:inset 0 2px 4px rgba(22,51,45,.13),0 0 0 2px #fff,0 0 0 3px #b8cf5e!important}
html.pz-ui-app :is(.pz-start-options button,.m-start button) i{display:inline-grid;place-items:center;flex:none;width:32px;height:32px;border-radius:10px;background:var(--pz-icon-tile);box-shadow:inset 0 1px 0 #fff,0 2px 0 #cedfd5,0 4px 6px rgba(22,51,45,.06);color:var(--tq-deep)}
html.pz-ui-app .pz-velke{background:radial-gradient(ellipse at 50% 0%,#fff,rgba(234,246,245,.96))!important;border-color:#92bfb6!important;box-shadow:inset 0 1px 0 #fff,0 3px 0 #d3e6de,0 7px 14px rgba(22,51,45,.04)}
html.pz-ui-app .pz-velke>i{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 4px;border-radius:17px;background:linear-gradient(145deg,#c2edf0,#86d2da);box-shadow:inset 0 2px 0 rgba(255,255,255,.8),0 4px 0 #72b4bc,0 8px 14px rgba(37,107,112,.17);font-size:28px}
html.pz-ui-app #pzPill{border:1px solid rgba(255,255,255,.18);background:linear-gradient(160deg,#24534a,#16332d 72%);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 3px 0 #0d2923,0 7px 16px rgba(22,51,45,.18)}
html.pz-ui-app :is(.model,.vyber-typ){box-shadow:inset 0 1px 0 #fff,0 2px 0 #dce8e0,0 5px 12px rgba(22,51,45,.04)}
html.pz-ui-app .model[aria-pressed=true]{border-color:var(--tq-deep);box-shadow:inset 0 1px 0 #fff,0 2px 0 #9ac7be,0 0 0 2px var(--tq-soft)}
@media(min-width:901px){
 html.pz-ui-app.pz-nove #pzRail{background:linear-gradient(165deg,rgba(255,255,255,.98),rgba(237,246,241,.94));box-shadow:inset 0 1px 0 #fff,0 3px 0 #d9e5de,0 9px 20px rgba(22,51,45,.07)}
 html.pz-ui-app.pz-nove #pzRail button{padding:6px 3px;gap:4px}
 html.pz-ui-app.pz-nove #pzRail button i{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:11px;font-size:22px;color:var(--tq-deep);background:var(--pz-icon-tile);box-shadow:inset 0 1px 0 #fff,0 2px 0 #d3e1d8,0 4px 6px rgba(22,51,45,.07)}
 html.pz-ui-app.pz-nove #pzRail button.on{background:rgba(218,237,229,.7);box-shadow:none}
 html.pz-ui-app.pz-nove #pzRail button.on i{background:linear-gradient(145deg,#b6e5ea,#74ccd8);color:#174b4e;box-shadow:inset 0 1px 0 #e9ffff,0 2px 0 #75b5ba,0 4px 6px rgba(37,107,112,.15)}
}
@media(max-width:900px){
 html.pz-ui-app .mobile-tabs{box-shadow:inset 0 2px 0 #fff,0 2px 0 #d4e3d9,0 5px 12px rgba(22,51,45,.05)}
 html.pz-ui-app .mobile-tabs button i{display:inline-grid;place-items:center;flex:none;width:26px;height:26px;border-radius:8px;font-size:18px!important;background:var(--pz-icon-tile);box-shadow:inset 0 1px 0 #fff,0 1px 0 #cbddd1;color:var(--tq-deep)}
 html.pz-ui-app .mobile-tabs button.on i{background:linear-gradient(145deg,#c4ebee,#83ccd5);color:#174b4e}
}
html.pz-ui-app #buyBtn:not(.ceka-vel){background:linear-gradient(160deg,#e0ed9e 0%,#c9dd68 54%,#bcd25b 100%)!important}

/* V4: odlesk se vztahuje pouze k tlačítku, i v patičce kroku 3. */
html.pz-ui-app .pz-flow-desktop #buyBtn{position:relative!important}

/* 25. 10. 2026 (Claude, převzetí hravého vzhledu od Codexu; nezávislá kontrola Opus, review/OPUS-HRAVY-2026-10-25.md, nálezy N1 a N2; Codex ať převezme do svého zdroje):
   N1 oprava odlesku (V4) dala #buyBtn v patičce kroku 3 position:relative!important, tím začaly platit right:24px a bottom:17px z pravidla pro position:fixed
   (ř. 251, v tomhle rozvržení jsou ignorované, protože tlačítko je static) a tlačítko Vyberte velikost / Do košíku se posunulo o 24 px doleva a 17 px nahoru a přes pravý
   okraj Zpět k návrhu (klik do pravé části Zpět spustil nákup). Odsazení se tady vynuluje.
   N2 tlačítka cesty k nákupu se při najetí myší nezvedají a při stisku jen zmenšují (jako živě scale(.98)): posun o 2 px nahoru a dolů způsoboval, že klik do 1 až 2 px
   u hrany padl na rodiče a obsluha tlačítka se nespustila. Ostatní hravé odezvy (dlaždice, Barva, Uložit) zůstávají. */
html.pz-ui-app .pz-flow-desktop #buyBtn{position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important}
@media(hover:hover) and (pointer:fine){
 html.pz-ui-app :is(.pz-flow-next,.m-buy,#buyBtn):not(:disabled):hover{transform:none}
}
html.pz-ui-app :is(.pz-flow-next,.m-buy,#buyBtn):not(:disabled):active{transform:scale(.98)}

/* Codex 27.10.2026 — N4/N5, navázání na nasazené opravy Claude N1/N2. */
html.pz-ui-app[data-pz-step="3"] .pz-flow-desktop #buyBtn:not(.ceka-vel):not(:disabled){box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(22,51,45,.06),0 4px 0 var(--pz-button-edge),0 7px 14px rgba(93,118,34,.13)}
html.pz-ui-app[data-pz-step="3"] .pz-flow-desktop #buyBtn:not(:disabled):active{box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 1px 0 var(--pz-button-edge)}
@media(max-width:370px){html.pz-ui-app .mobile-tabs button{gap:4px!important}html.pz-ui-app .mobile-tabs button i{width:24px;height:24px}}

/* Codex 27.10.2026 — nízký desktop: dvě varování nad patičkou,
   nabídka velikostí má vedle nich vlastní prostor. Plátno se nepřepočítává. */
@media(min-width:901px) and (max-width:1365px){
 html.pz-ui-app.pz-nove{--pz-card-left:104px;--pz-card-right:170px}
 html.pz-ui-app.pz-nove:not(.pz-fly-zavreny){--pz-card-left:460px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed){--pz-card-right:376px}
 html.pz-ui-app.pz-nove:has(#pzVelKarta){--pz-card-right:268px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed):has(#pzVelKarta){--pz-card-right:376px}
 html.pz-ui-app.pz-nove :is(#dpiWarn,#presahWarn):not([hidden]){left:var(--pz-card-left)!important;width:min(560px,calc(100% - var(--pz-card-left) - var(--pz-card-right)))!important;padding:10px 46px 10px 14px;font-size:12px;line-height:1.35}
 html.pz-ui-app.pz-nove :is(#dpiWarn,#presahWarn):not([hidden]){top:8px}
 html.pz-ui-app.pz-nove #presahWarn:not([hidden]){top:calc(8px + var(--pz-dpi-h,0px))}
 html.pz-ui-app :is(#dpiWarn,#presahWarn):not([hidden])::before{display:none}
 html.pz-ui-app :is(#dpiWarn,#presahWarn) b{font-size:13px;line-height:1.35}
 html.pz-ui-app :is(#dpiWarn,#presahWarn) button:not(.pz-karta-x){box-sizing:border-box;min-height:44px;max-width:100%;padding:6px 8px;white-space:normal;line-height:1.3}
 html.pz-ui-app #dpiWarn .pz-dpi-tl{gap:6px;margin-top:4px}
 html.pz-ui-app #dpiWarn.pz-dpi .pz-dpi-tl button{flex:1 1 calc(50% - 3px);min-width:0}
 html.pz-ui-app #presahWarn:not([hidden])>button:not(.pz-karta-x){margin:8px 4px 0 0}
 html.pz-ui-app #presahWarn:has(#presahKs)>button:not(.pz-karta-x){width:calc(50% - 6px);vertical-align:top}
 html.pz-ui-app:has(:is(#dpiWarn,#presahWarn):not([hidden]):not([data-pz-zavreno])) #pzVelKarta{max-width:240px!important}
}
@media(min-width:901px) and (max-width:1000px){
 html.pz-ui-app.pz-nove #pzFly{width:240px!important}
 html.pz-ui-app.pz-nove:not(.pz-fly-zavreny){--pz-card-left:360px}
}

/* 26. 10. 2026: čitelný obrys a ikona Nového návrhu; původní rozměry zůstávají. */
#newBtn{border-color:#51675e}
#newBtn i{color:#256b70}
#newBtn:focus-visible{outline-color:#256b70}

/* Codex28.10.2026 — Adam: produkt, barvy a velikosti v levé zásuvce.
   Přesouvá se jen existující panel; vstupy, krok3, plátno a patička se nemění. */
@media(min-width:901px){
 html.pz-ui-app.pz-nove #panelRight,html.pz-ui-app.pz-nove[data-pz-step] #panelRight{left:104px;right:auto;width:340px}
 html.pz-ui-app.pz-config-closed.pz-nove #panelRight{transform:translateX(calc(-100% - 110px))}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPohledy{padding-left:460px;padding-right:100px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPill{left:calc(50% + 220px);max-width:calc(100% - 492px)}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzZoom{right:16px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) :is(#dpiWarn,#presahWarn):not([hidden]){left:460px!important;width:min(560px,calc(100% - 460px - 170px))!important;margin-right:0}
}
@media(min-width:901px) and (max-width:1365px){
 html.pz-ui-app.pz-nove:not(.pz-config-closed){--pz-card-left:460px;--pz-card-right:170px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed):has(#pzVelKarta){--pz-card-right:268px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) :is(#dpiWarn,#presahWarn):not([hidden]){left:var(--pz-card-left)!important;width:min(560px,calc(100% - var(--pz-card-left) - var(--pz-card-right)))!important}
}
@media(min-width:901px) and (max-width:1100px){
 html.pz-ui-app.pz-nove #panelRight,html.pz-ui-app.pz-nove[data-pz-step] #panelRight{width:280px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed){--pz-card-left:400px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPohledy{padding-left:400px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPill{left:calc(50% + 190px);max-width:calc(100% - 432px)}
 html.pz-ui-app[data-pz-step="3"] #panelRight .sm-radky{grid-template-columns:minmax(0,1fr)!important}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPohledy .view-toggle{min-width:0;width:100%;overflow-x:auto;justify-content:flex-start}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPohledy .vt{flex-shrink:0}
}
@media(min-width:901px) and (max-width:1000px){
 html.pz-ui-app.pz-nove #panelRight,html.pz-ui-app.pz-nove[data-pz-step] #panelRight{width:240px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed){--pz-card-left:360px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPohledy{padding-left:360px}
 html.pz-ui-app.pz-nove:not(.pz-config-closed) #pzPill{left:calc(50% + 170px);max-width:calc(100% - 392px)}
}
/* Bílé vzorky se neztrácejí na světlém povrchu. Barva návrhu se nemění. */
html.pz-ui-app .ts-styl:not(.svetla),html.pz-ui-app .ts-napis{background:#203b37;color:#fff}
html.pz-ui-app .ts-styl:not(.svetla) small,html.pz-ui-app .ts-napis small{color:#dce8e2}
html.pz-ui-app .ts-styl:not(.svetla):is(:hover,.on),html.pz-ui-app .ts-napis:hover{background:#294b45;border-color:#256b70;box-shadow:0 0 0 2px #74ccd8}
html.pz-ui-app .ts-styl.svetla:is(:hover,.on){border-color:#256b70;box-shadow:0 0 0 2px #74ccd8}
html.pz-ui-app .ts-styl:focus-visible,html.pz-ui-app .ts-napis:focus-visible{outline:3px solid #256b70;outline-offset:3px}
/* Stávající tmavý hover šablony potřebuje světlý titulek i hint. */
html.pz-ui-app .tplcell:hover .tpname{color:#fff}
html.pz-ui-app .tplcell:hover .tphint{color:#dce8e2}
/* Karta Přidat text / Nahrát: konkrétní kontrast na světlém povrchu. */
html.pz-ui-app .pz-velke b{color:#16332d}
html.pz-ui-app .pz-velke small{color:#51675e}

/*28.10: v mobilním čtyřsloupcovém doku zpřístupnit původní ovladač Barva.
   Stávající handler otevře široký list; žádný nový vstup ani kopie vzorníku. */
@media(max-width:900px){
 html.pz-ui-app .mobile-tabs #mTabBarva{display:flex!important}
}

/* 31. 10. 2026 (Codex, převzal Claude 1. 11.): barvy29 a R57. Větší vzorky a pole HEX, kompaktní seznam velikostí na telefonu. Jen vzhled, data, ceny a stavy dodává stávající JS.
   Výšky listu na telefonu určil Adam 1. 11. 2026: Velikosti 64 dvh (Codex 72), Barva 60 dvh (Codex 80), aby nad listem zůstalo vidět tričko. */
html.pz-ui-app:not(.pz-ae) :is(#textColors,#clipColors).swatches.sm:not([hidden]){
 display:flex;flex-wrap:wrap;align-items:center;gap:5px;width:100%;
}
html.pz-ui-app:not(.pz-ae) :is(#textColors,#clipColors) .sw{
 display:block;box-sizing:border-box;flex:0 0 44px;width:44px;height:44px;
 border:5px solid #fff;border-radius:50%;margin:0;
 box-shadow:inset 0 0 0 1px #73877c;
}
html.pz-ui-app:not(.pz-ae) :is(#textColors,#clipColors) .sw:is(.on,[aria-pressed=true]){
 outline:2px solid var(--tq-deep);outline-offset:0;
}
html.pz-ui-app:not(.pz-ae) :is(#textColors,#clipColors) label.sw-pick{
 display:block;position:relative;overflow:hidden;
}
html.pz-ui-app:not(.pz-ae) :is(#textColors,#clipColors) .sw-pick input[type=color]{
 inset:0;width:100%;height:100%;opacity:0;cursor:pointer;
}
html.pz-ui-app:not(.pz-ae) :is(#textColors,#clipColors) :is(.sw:focus-visible,.sw-pick:focus-within){
 outline:3px solid var(--tq-deep);outline-offset:2px;
}
html.pz-ui-app:not(.pz-ae) :is(#hexRowText,#hexRowClip){gap:7px;min-width:0;flex-wrap:wrap}
html.pz-ui-app:not(.pz-ae) :is(#hexRowText,#hexRowClip)::before{
 content:"HEX";flex:none;font-size:12px;line-height:1.4;font-weight:700;color:var(--ink);
}
html.pz-ui-app:not(.pz-ae) :is(#hexRowText,#hexRowClip) .hex-ob{height:44px;min-width:100px;box-sizing:border-box}
html.pz-ui-app:not(.pz-ae) :is(#hexRowText,#hexRowClip) .hex-inp{height:42px;font-size:16px}
html.pz-ui-app:not(.pz-ae) :is(#hexRowText,#hexRowClip) .hex-pip{width:44px;height:44px;min-width:44px;min-height:44px}
html.pz-ui-app:not(.pz-ae) :is(#colorSwatches,#colorPalette){flex-wrap:wrap;gap:5px}
html.pz-ui-app:not(.pz-ae) :is(#colorSwatches,#colorPalette)>.sw{flex:0 0 44px;box-shadow:inset 0 0 0 1px #73877c}
html.pz-ui-app:not(.pz-ae) :is(#colorSwatches,#colorPalette)>.sw:is(.on,[aria-pressed=true]){box-shadow:0 0 0 2px var(--tq-deep),inset 0 0 0 1px #73877c}
html.pz-ui-app:not(.pz-ae) #paletaBtn{min-height:44px}
html.pz-ui-app:not(.pz-ae) #konfigLista .kl-barva>.lab{display:flex;align-items:baseline;gap:5px;white-space:nowrap;min-width:0}
html.pz-ui-app:not(.pz-ae) #barvaNazev{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Příprava na skupiny barev nad osm barev (JS je zatím nevykresluje): nadpis skupiny je přímé dítě seznamu. */
html.pz-ui-app:not(.pz-ae) :is(#colorSwatches,#colorPalette)>.sw-skup{
 flex:0 0 100%;margin:10px 0 3px;color:var(--muted);font-size:11px;line-height:1.4;font-weight:700;
}
html.pz-ui-app:not(.pz-ae) :is(#colorSwatches,#colorPalette)>.sw-skup:first-child{margin-top:0}
/* Dvoubarevný vzorek (zatím se nepoužívá): data-hex2 samo nejde převést na barvu, JS musí nastavit současně --c1 a --c2 z ověřených dat. */
html.pz-ui-app:not(.pz-ae) :is(#colorSwatches,#colorPalette)>.sw[data-hex2]{
 background:linear-gradient(135deg,var(--c1) 50%,var(--c2) 50%)!important;
}
html.pz-ui-app:not(.pz-ae) :is(#mColors,#mColorsPal)>.m-color[data-hex2]>.m-sw{
 background:linear-gradient(135deg,var(--c1) 50%,var(--c2) 50%)!important;
}
@media(min-width:901px){
 /* Otevřený panel již má vlastní křížek; druhý ovladač Barva není potřebný. */
 html.pz-ui-app:not(.pz-ae):not(.pz-config-closed) .pz-ui-config-open{display:none}
}
@media(max-width:900px){
 html.pz-ui-app:not(.pz-ae) .mobile-tabs #mTabBarva{
  min-height:44px!important;background:#edf6f3;color:#16332d;font-weight:700;
 }
 html.pz-ui-app:not(.pz-ae) body[data-mpane=barva] .m-sheet{max-height:60vh;max-height:60dvh}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=barva] .m-sheet-head{padding:7px 56px 5px 16px}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=barva] .pz-flow-mobile{padding:6px 16px;gap:0}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=barva] .pz-flow-mobile .pz-flow-note{display:none}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=barva] .pz-flow-mobile .pz-flow-actions{justify-content:flex-end}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=barva] .pz-flow-mobile .pz-flow-next{flex:0 1 auto;min-width:0;min-height:44px;padding:7px 12px}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=barva] .m-sheet-body{padding-top:10px;scrollbar-gutter:stable}
 html.pz-ui-app:not(.pz-ae) :is(#mColors,#mColorsPal){grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 4px;overflow:visible;max-height:none}
 html.pz-ui-app:not(.pz-ae) :is(#mColors,#mColorsPal)>.m-color{min-width:0;color:var(--ink);line-height:1.3;overflow-wrap:anywhere}
 html.pz-ui-app:not(.pz-ae) :is(#mColors,#mColorsPal) .m-sw{box-sizing:border-box;border:1px solid #73877c;flex-shrink:0}
 html.pz-ui-app:not(.pz-ae) :is(#mColors,#mColorsPal)>.m-color:is(.on,[aria-pressed=true]) .m-sw{outline:2px solid var(--tq-deep);outline-offset:3px}
 html.pz-ui-app:not(.pz-ae) :is(#mColors,#mColorsPal)>.sw-skup{grid-column:1/-1;margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.4;font-weight:700}
 html.pz-ui-app:not(.pz-ae) :is(#mColors,#mColorsPal)>.sw-skup:first-child{margin-top:0}
 /* R57: barva návrhu má zůstat čitelná i při úpravě a výběru velikostí. */
 html.pz-ui-app:not(.pz-ae) body:is([data-mpane=obrazek],[data-mpane=velikost],[data-mpane=prvek]) .m-sheet-bg{background:rgba(6,10,8,.08)}
 /* Prázdný úvod zachovává cestu k velikostem jako vedlejší obrysovou akci. */
 html.pz-ui-app:not(.pz-ae) body[data-mpane=start] .pz-flow-mobile .pz-flow-next{background:#fff;border-color:var(--line-strong);box-shadow:none}
 /* Jediná hlavní akce s cenou zůstává v patičce mHotovo. hidden řídí původní JS. */
 html.pz-ui-app:not(.pz-ae)[data-pz-step="2"] body:is([data-mpane=obrazek],[data-mpane=text],[data-mpane=prvek],[data-mpane=motivy]) .pz-flow-mobile .pz-flow-next{display:none}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=velikost] .pz-flow-mobile{display:none}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=velikost] .m-sheet{max-height:64vh;max-height:64dvh}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=velikost] .m-sheet-head{padding:6px 56px 4px 12px}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=velikost] .m-sheet-head .qs-handle{margin-bottom:3px}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=velikost] .m-sheet-body{padding:8px 10px 12px;scroll-padding-block:12px}
 html.pz-ui-app:not(.pz-ae) body[data-mpane=velikost] .m-sheet-foot{padding:8px 12px max(8px,env(safe-area-inset-bottom,0px))}
 html.pz-ui-app:not(.pz-ae) #mVelSlot .sm-radky{gap:6px!important}
 html.pz-ui-app:not(.pz-ae) #mVelSlot .sm-radek{flex-direction:column;align-items:stretch;padding:2px!important;gap:2px;min-width:0}
 html.pz-ui-app:not(.pz-ae) #mVelSlot .sm-v{font-size:12px!important;line-height:14px;margin:0;min-width:0}
 html.pz-ui-app:not(.pz-ae) #mVelSlot .sm-krok{flex:none;min-width:0;max-width:none;margin:0;height:44px!important}
 html.pz-ui-app:not(.pz-ae) #mVelSlot .sm-krok button{width:44px;height:44px;flex:0 0 44px}
 html.pz-ui-app:not(.pz-ae) #mVelSlot .sm-krok input{height:44px;scroll-margin-block:12px}
}
