/* Kreator nadruku (/kreator-nadruku/) — 1:1 z handoff39 (kn-*). Scope: .fc-root.fc-creator.
   Tokeny definiowane TUTAJ (CSS per widok — configurator.css nie ładuje się na tej stronie). */
.fc-root.fc-creator{
  --fc-yellow:#FFDE2C;
  --fc-magenta:#C800A7; --fc-magenta-dark:#a90b8f;
  --fc-cyan:#6EC1E4;
  --fc-text:#54595F; --fc-text-soft:#7A7A7A;
  --fc-border:#ECECEC; --fc-bg:#FFFFFF; --fc-bg-soft:#F7F8F8;
  --fc-font-head:'Poppins',sans-serif; --fc-font-body:'Lato',sans-serif;
  --fc-r:10px; --fc-r-sm:7px;
}
.fc-creator *{box-sizing:border-box}
.fc-creator [hidden]{display:none!important} /* klasy z display:flex biją atrybut [hidden] (gotcha v0.x) */
/* kontener jak pozostałe widoki: szerokość z panelu (--fc-container) + wyśrodkowanie — bez tego treść klei się do lewej.
   width:100% KONIECZNE: rodzic (.ast-container) to flex, bez tego fc-root siada do szerokości TREŚCI i układ skacze przy wyborze produktu */
.fc-root.fc-creator{font-family:var(--fc-font-body);color:var(--fc-text);background:var(--fc-bg);line-height:1.5;-webkit-font-smoothing:antialiased;width:100%;max-width:var(--fc-container,1280px);margin:0 auto}
.fc-creator h1,.fc-creator h2,.fc-creator h3{font-family:var(--fc-font-head);margin:0;color:var(--fc-text);line-height:1.25}
.fc-creator button{font-family:inherit}
.fc-creator .kn-wrap{padding:24px 20px 64px}
.fc-creator .kn-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
/* na kreatorze tylko sam przełącznik PLN/EUR — bez napisów „Waluta cen" i noty NBP */
.fc-creator .fc-curbar__l{display:none}
.fc-creator .kn-crumbs{font-size:13px;color:var(--fc-text-soft);display:flex;gap:8px;flex-wrap:wrap}
.fc-creator .kn-crumbs a{color:var(--fc-text-soft);text-decoration:none}
.fc-creator .kn-crumbs a:hover{color:var(--fc-magenta)}
.fc-creator .kn-crumbs .is-cur{color:var(--fc-text)}
.fc-creator .kn-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}
.fc-creator .kn-eyebrow{font-family:var(--fc-font-head);font-size:12px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--fc-magenta);margin:0 0 4px}
.fc-creator .kn-head h1{font-size:27px;font-weight:700;font-family:var(--fc-font-head);margin:0}
.fc-creator .kn-lead{font-size:14px;color:var(--fc-text-soft);margin:6px 0 0;max-width:560px}
.fc-creator .kn-headr{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.fc-creator .kn-stepper{display:flex;align-items:center}
.fc-creator .kn-step{display:flex;align-items:center;gap:8px}
.fc-creator .kn-step i{width:26px;height:26px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--fc-font-head);font-style:normal;font-weight:700;font-size:12px;background:var(--fc-bg-soft);border:1px solid var(--fc-border);color:var(--fc-text-soft);transition:.15s}
.fc-creator .kn-step b{font-family:var(--fc-font-head);font-weight:600;font-size:12.5px;color:var(--fc-text-soft);white-space:nowrap}
.fc-creator .kn-step.is-active i{background:#fbeaf6;border-color:var(--fc-magenta);color:var(--fc-magenta)}
.fc-creator .kn-step.is-active b{color:var(--fc-text)}
.fc-creator .kn-step.is-done i{background:var(--fc-magenta);border-color:var(--fc-magenta);color:#fff}
.fc-creator .kn-stepline{width:22px;height:1px;background:var(--fc-border);margin:0 8px;flex:none}
.fc-creator .kn-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.fc-creator .kn-steps{display:flex;flex-direction:column;gap:16px;min-width:0}
.fc-creator .kn-sec{border:1px solid var(--fc-border);border-radius:var(--fc-r);background:#fff;padding:20px}
.fc-creator .kn-sec__h{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.fc-creator .kn-sec__h--split{justify-content:space-between;flex-wrap:wrap}
.fc-creator .kn-sec__h--split>div{display:flex;align-items:center;gap:10px}
.fc-creator .kn-sec__h h2{font-size:16px;font-weight:700;font-family:var(--fc-font-head);margin:0}
.fc-creator .kn-badge{width:28px;height:28px;flex:none;border-radius:8px;display:flex;align-items:center;justify-content:center;font-family:var(--fc-font-head);font-weight:700;font-size:13px;background:#fbeaf6;color:var(--fc-magenta);transition:.15s}
.fc-creator .kn-sec.is-locked .kn-badge{background:var(--fc-bg-soft);color:var(--fc-text-soft)}
.fc-creator .kn-sec.is-done .kn-badge{background:var(--fc-magenta);color:#fff}
.fc-creator .kn-locked{margin:0;font-size:13.5px;color:var(--fc-text-soft);background:var(--fc-bg-soft);border:1px dashed var(--fc-border);border-radius:var(--fc-r-sm);padding:12px 14px}
.fc-creator .kn-sec:not(.is-locked) .kn-locked{display:none}
.fc-creator .kn-lbl{font-family:var(--fc-font-head);font-size:12px;font-weight:700;color:var(--fc-text-soft);margin:12px 0 8px}
.fc-creator .kn-lbl--caps{letter-spacing:.4px;text-transform:uppercase;margin-top:16px}
.fc-creator .kn-qty{font-family:var(--fc-font-head);font-weight:700;font-size:12.5px;color:var(--fc-text-soft)}
.fc-creator .kn-qty.is-on{color:var(--fc-magenta)}
.fc-creator .kn-hint{font-size:12.5px;color:var(--fc-text-soft)}
.fc-root .kn-tile{position:relative;display:flex;flex-direction:column;gap:6px;align-items:center;border:1px solid var(--fc-border);border-radius:var(--fc-r);background:#fff;padding:14px;cursor:pointer;transition:border-color .13s,box-shadow .13s,transform .1s;text-align:center}
.fc-root .kn-tile:hover,.fc-root .kn-tile:focus{border-color:var(--fc-cyan);box-shadow:0 8px 22px rgba(0,0,0,.07);background:#fff}
.fc-root .kn-tile:active{transform:translateY(1px)}
.fc-root .kn-tile.is-active{border-color:var(--fc-magenta);box-shadow:0 0 0 1px var(--fc-magenta)}
.fc-root .kn-tile b{font-family:var(--fc-font-head);font-weight:600;font-size:13.5px;color:var(--fc-text)}
.fc-root .kn-tile small{font-size:11.5px;color:var(--fc-text-soft)}
.fc-creator .kn-check{position:absolute;top:9px;right:9px;width:20px;height:20px;border-radius:50%;background:var(--fc-magenta);color:#fff;display:flex;align-items:center;justify-content:center}
.fc-creator .kn-garments{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
/* ikona kategorii jak na stronie głównej (Icons::svg, stroke=currentColor — bez koloru dziedziczy biały z buttonów Astry) */
.fc-creator .kn-garment__ico{display:flex;align-items:center;justify-content:center;height:64px;width:100%;color:var(--fc-magenta)}
.fc-creator .kn-garment__ico svg{display:block}
.fc-creator .kn-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:10px}
/* zdjęcia produktów na BIAŁYM tle (konwencja kafli sklepu — szare źle wygląda przy białych produktach) */
.fc-creator .kn-product__img{display:flex;align-items:center;justify-content:center;height:112px;width:100%;background:#fff;border-radius:var(--fc-r-sm);overflow:hidden}
.fc-creator .kn-product__img span{display:block;width:100%;height:104px;background:center/contain no-repeat}
.fc-creator .kn-product__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;font-size:11.5px;color:var(--fc-text-soft)}
.fc-creator .kn-product__meta b{color:var(--fc-magenta);font-family:var(--fc-font-head)}
.fc-creator .kn-product__sw{display:flex;gap:4px;align-items:center}
.fc-creator .kn-product__sw i{width:13px;height:13px;border-radius:50%;border:1px solid rgba(0,0,0,.15);display:block}
.fc-creator .kn-product__sw small{font-size:10.5px;color:var(--fc-text-soft);margin-left:3px}
.fc-creator .kn-swatches{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.fc-root .kn-sw{width:30px;height:30px;border-radius:50%;border:1px solid rgba(0,0,0,.18);cursor:pointer;padding:0;transition:transform .1s,box-shadow .13s;background:#fff}
.fc-root .kn-sw:hover{transform:scale(1.12)}
.fc-root .kn-sw.is-active{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--fc-magenta)}
.fc-creator .kn-sizes{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px}
.fc-creator .kn-size{display:flex;flex-direction:column;gap:7px;align-items:center;border:1px solid var(--fc-border);border-radius:var(--fc-r-sm);padding:10px}
.fc-creator .kn-size.is-on{border-color:var(--fc-magenta);background:#fdf8fc}
.fc-creator .kn-size b{font-family:var(--fc-font-head);font-weight:700;font-size:14px}
.fc-creator .kn-size__ctl{display:flex;align-items:center;gap:6px}
.fc-root .kn-size__ctl button{width:28px;height:28px;border:1px solid var(--fc-border);border-radius:7px;background:#fff;cursor:pointer;color:var(--fc-text);font-weight:700;padding:0}
.fc-root .kn-size__ctl button:hover{border-color:var(--fc-magenta);color:var(--fc-magenta);background:#fff}
.fc-creator .kn-size__ctl input{width:44px;height:28px;text-align:center;border:1px solid var(--fc-border);border-radius:7px;font-family:var(--fc-font-head);font-weight:700;font-size:13px;color:var(--fc-text);padding:0}
.fc-creator .kn-techs{display:flex;flex-direction:column;gap:10px}
.fc-root .kn-tech{flex-direction:row;align-items:center;gap:14px;text-align:left;padding:13px 16px}
.fc-root .kn-tech:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}
.fc-creator .kn-tech__ic{width:40px;height:40px;flex:none;border-radius:10px;background:var(--fc-bg-soft);display:flex;align-items:center;justify-content:center;color:var(--fc-magenta)}
.fc-creator .kn-tech__tx{flex:1;min-width:0}
.fc-creator .kn-tech__tx small{display:block;font-size:12.5px;color:var(--fc-text-soft);margin-top:2px}
.fc-creator .kn-tech__price{flex:none;text-align:right;font-size:12px;color:var(--fc-text-soft)}
.fc-creator .kn-tech__price b{font-family:var(--fc-font-head);color:var(--fc-text)}
.fc-creator .kn-places{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.fc-creator .kn-place__img{position:relative;display:flex;align-items:center;justify-content:center;height:92px;width:100%;background:#fff;border-radius:var(--fc-r-sm);overflow:hidden}
.fc-creator .kn-place__img span{display:block;width:100%;height:86px;background:center/contain no-repeat}
.fc-creator .kn-opts{border:1px solid #f1c4e4;background:#fdf8fc;border-radius:var(--fc-r);padding:14px 16px;margin-top:12px}
.fc-creator .kn-opts__t{font-family:var(--fc-font-head);font-size:12px;font-weight:700;color:var(--fc-magenta);margin:0 0 6px}
.fc-creator .kn-optrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 0;border-top:1px solid #f3e2ee}
.fc-creator .kn-optrow>b{font-family:var(--fc-font-head);font-weight:600;font-size:13px;color:var(--fc-text);min-width:100px}
.fc-creator .kn-optrow>small{font-family:var(--fc-font-head);font-weight:600;font-size:12px;color:var(--fc-text-soft)}
.fc-creator .kn-optbtns{display:flex;flex-wrap:wrap;gap:6px}
.fc-root .kn-optbtn{min-width:34px;height:34px;border:1px solid var(--fc-border);border-radius:8px;background:#fff;cursor:pointer;font-family:var(--fc-font-head);font-weight:700;font-size:13px;color:var(--fc-text);padding:0 8px}
.fc-root .kn-optbtn.is-active,.fc-root .kn-optbtn.is-active:hover{background:var(--fc-magenta);border-color:var(--fc-magenta);color:#fff}
.fc-root .kn-optbtn:hover{border-color:var(--fc-magenta);color:var(--fc-magenta);background:#fff}
/* własny chevron — bez niego select formatu wygląda jak zwykły input (nie widać, że rozwijany) */
.fc-creator .kn-optrow select{flex:1;min-width:200px;max-width:320px;height:40px;border:1px solid #d7dfe2;border-radius:var(--fc-r-sm);padding:0 38px 0 12px;font-size:13.5px;color:var(--fc-text);cursor:pointer;-webkit-appearance:none;appearance:none;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A7A7A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/15px}
.fc-root .kn-drop{width:100%;border-style:dashed;gap:6px;padding:22px 14px;color:var(--fc-magenta)}
.fc-root .kn-drop.is-over{background:#fbeaf6;border-color:var(--fc-magenta)}
.fc-creator .kn-fileerr{display:flex;gap:5px;align-items:center;font-size:12px;color:#c0392b;font-weight:700;margin-top:8px}
.fc-creator .kn-filecard{display:flex;align-items:center;gap:12px;border:1px solid #bce8cf;background:#f4fbf6;border-radius:var(--fc-r);padding:12px 14px}
.fc-creator .kn-filecard__ext{flex:none;font-family:var(--fc-font-head);font-weight:700;font-size:10px;letter-spacing:.4px;color:#fff;background:#0a7a3f;border-radius:6px;padding:5px 7px}
.fc-creator .kn-filecard__tx{flex:1;min-width:0}
.fc-creator .kn-filecard__tx b{font-family:var(--fc-font-head);font-weight:600;font-size:13.5px;color:var(--fc-text);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fc-creator .kn-filecard__tx small{font-size:12px;color:var(--fc-text-soft)}
.fc-root .kn-filecard button{width:30px;height:30px;flex:none;border:1px solid var(--fc-border);border-radius:8px;background:#fff;cursor:pointer;color:var(--fc-text-soft);font-size:16px;line-height:1;padding:0}
.fc-creator .kn-later{display:flex;gap:10px;align-items:flex-start;cursor:pointer;margin-top:12px;font-size:13px;color:var(--fc-text)}
.fc-creator .kn-later input{width:17px;height:17px;accent-color:var(--fc-magenta);cursor:pointer;margin-top:1px}
.fc-creator .kn-aside{position:sticky;top:101px}
.fc-creator .kn-sum{border:1px solid var(--fc-border);border-radius:var(--fc-r);background:#fff;padding:20px}
.fc-creator .kn-sum h3{font-size:15px;font-weight:700;font-family:var(--fc-font-head);margin:0 0 14px}
.fc-creator .kn-sum__prev{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--fc-border);border-radius:var(--fc-r-sm);padding:14px;margin-bottom:14px;min-height:150px}
.fc-creator .kn-sum__prev span{display:block;width:100%;height:150px;background:center/contain no-repeat}
.fc-creator .kn-sum__prev .fc-shirt-svg{width:96px;height:88px}
.fc-creator .kn-sum__rows{display:flex;flex-direction:column;gap:9px;font-size:13px}
.fc-creator .kn-sum__row{display:flex;justify-content:space-between;gap:10px;font-size:13px}
.fc-creator .kn-sum__row>span:first-child{color:var(--fc-text-soft)}
.fc-creator .kn-sum__row b{font-family:var(--fc-font-head);font-weight:600;text-align:right;min-width:0}
.fc-creator .kn-sum__row--top{align-items:flex-start}
.fc-creator .kn-sum__color{display:flex;align-items:center;gap:7px}
.fc-creator .kn-sum__color i{width:15px;height:15px;border-radius:50%;border:1px solid rgba(0,0,0,.18);display:block}
.fc-creator .kn-sum__chips{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}
.fc-creator .kn-sum__chips .kn-chip{font-family:var(--fc-font-head);font-weight:700;font-size:11px;color:var(--fc-magenta);background:#fbeaf6;border-radius:999px;padding:3px 10px;white-space:nowrap}
.fc-creator .kn-dash{color:#c9c9c9}
.fc-creator .kn-sum hr{border:0;border-top:1px solid var(--fc-border);margin:14px 0}
.fc-creator .kn-sum__total{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:5px}
.fc-creator .kn-sum__total>span:first-child{font-family:var(--fc-font-head);font-weight:700;font-size:13.5px}
.fc-creator .kn-sum__totalv{text-align:right}
.fc-creator .kn-sum__totalv b{font-family:var(--fc-font-head);font-weight:700;font-size:22px;color:var(--fc-magenta)}
.fc-creator .kn-sum__totalv small{display:block;font-size:10.5px;color:var(--fc-text-soft);text-transform:uppercase;letter-spacing:.3px}
.fc-root .kn-cta{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:52px;margin-top:14px;border:0;border-radius:var(--fc-r-sm);background:var(--fc-magenta);color:#fff;font-family:var(--fc-font-head);font-weight:700;font-size:15px;cursor:pointer;transition:.15s;padding:0}
.fc-root .kn-cta:hover,.fc-root .kn-cta:focus{background:var(--fc-magenta-dark,#a90b8f);color:#fff}
.fc-root .kn-cta:disabled{background:#e4e6e7;color:#a8acae;cursor:not-allowed}
/* CTA drugorzędne „Wyślij projekt do wyceny" (podgląd → RFQ) — ghost; własny hover/focus/disabled (Astra nadpisuje gołe buttony) */
.fc-root .kn-cta--rfq{height:46px;margin-top:9px;background:#fff;border:1.5px solid #f1c4e4;color:var(--fc-magenta);font-size:14px}
.fc-root .kn-cta--rfq:hover,.fc-root .kn-cta--rfq:focus{background:#fbeaf6;border-color:var(--fc-magenta);color:var(--fc-magenta)}
.fc-root .kn-cta--rfq:disabled{background:#fff;border-color:#ececec;color:#c4bfc9;cursor:not-allowed}
.fc-root .kn-cta--rfq svg{flex:none}
.fc-root .kn-cta--rfq.is-busy{pointer-events:none;opacity:.7}
.fc-creator .kn-ctahint{margin:9px 0 0;font-size:12px;color:var(--fc-text-soft);display:flex;gap:6px;align-items:flex-start}
.fc-creator .kn-ctahint svg{flex:none;margin-top:2px}
.fc-creator .kn-added{display:flex;align-items:center;gap:10px;background:#eafaf0;border:1px solid #bce8cf;border-radius:var(--fc-r-sm);padding:11px 13px;margin-top:12px;animation:kn-pop .25s ease}
.fc-creator .kn-added i{width:22px;height:22px;flex:none;border-radius:50%;background:#0a7a3f;color:#fff;display:flex;align-items:center;justify-content:center;font-style:normal}
.fc-creator .kn-added span{flex:1;font-size:12.5px;color:#0a7a3f;font-weight:700}
.fc-creator .kn-added a{font-family:var(--fc-font-head);font-weight:700;font-size:12.5px;white-space:nowrap;color:var(--fc-magenta);text-decoration:none}
@keyframes kn-pop{0%{opacity:0;transform:translateY(6px)}100%{opacity:1;transform:translateY(0)}}
.fc-creator .kn-phone{display:flex;align-items:center;gap:11px;border:1px solid var(--fc-border);border-radius:var(--fc-r);background:var(--fc-bg-soft);padding:14px 16px;margin-top:14px}
.fc-creator .kn-phone>svg{flex:none;color:var(--fc-magenta)}
.fc-creator .kn-phone span{font-size:12.5px;color:var(--fc-text)}
.fc-creator .kn-phone a{font-weight:700;color:var(--fc-magenta);text-decoration:none}
.fc-creator .kn-phone small{color:var(--fc-text-soft)}
@media (max-width:1020px){
  .fc-creator .kn-grid{grid-template-columns:1fr}
  .fc-creator .kn-aside{position:static}
  .fc-creator .kn-stepper{display:none}
}

/* ===== tryb „Podglad na produkcie" (handoff40) ===== */
.fc-creator .kn-modebar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.fc-creator .kn-mode{position:relative;display:inline-flex;background:#F2F3F4;border:1px solid #E7E8EA;border-radius:999px;padding:4px}
.fc-creator .kn-mode__thumb{position:absolute;top:4px;bottom:4px;left:4px;right:calc(50% + 6px);background:var(--fc-magenta);border-radius:999px;box-shadow:0 2px 6px rgba(200,0,167,.32);transition:all .26s cubic-bezier(.4,0,.2,1)}
.fc-creator .kn-mode.is-preview .kn-mode__thumb{left:calc(50% - 6px);right:4px}
.fc-root .kn-mode button{position:relative;z-index:1;height:36px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 16px;border:0;background:transparent;cursor:pointer;font-family:var(--fc-font-head);font-weight:700;font-size:12.5px;white-space:nowrap;transition:color .2s;color:var(--fc-text-soft)}
.fc-root .kn-mode button.is-on{color:#fff}
.fc-root .kn-mode button:hover,.fc-root .kn-mode button:focus{background:transparent}
.fc-creator .kn-modehint{font-size:12px;color:var(--fc-text-soft)}
@media (max-width:700px){
  .fc-creator .kn-mode{display:flex;width:100%}
  .fc-root .kn-mode button{flex:1 1 0;min-width:0;padding:0 8px;font-size:11.5px}
}
@media (max-width:400px){
  .fc-root .kn-mode button svg{display:none}
}
.fc-creator .kn-pv__top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.fc-creator .kn-pv__views{display:flex;gap:7px;flex-wrap:wrap}
.fc-root .kn-pv__view{font-family:var(--fc-font-head);font-weight:700;font-size:12.5px;padding:8px 15px;border-radius:999px;cursor:pointer;transition:.12s;border:1.5px solid var(--fc-border);background:#fff;color:var(--fc-text-soft)}
.fc-root .kn-pv__view.is-on,.fc-root .kn-pv__view.is-on:hover{border-color:var(--fc-magenta);background:#fbeaf6;color:var(--fc-magenta)}
.fc-root .kn-pv__view:hover{border-color:var(--fc-cyan);background:#fff}
.fc-creator .kn-pv__pname{font-size:12px;color:var(--fc-text-soft)}
.fc-creator .kn-pv__canvas{position:relative;background:#fff;border:1px solid var(--fc-border);border-radius:var(--fc-r);height:560px;overflow:hidden}
.fc-creator .kn-pv__photo{position:absolute;inset:24px;background:center/contain no-repeat}
.fc-creator .kn-pv__ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.fc-creator .kn-pv__ph .fc-shirt-svg{width:300px;height:275px}
.fc-creator .kn-pv__note{position:absolute;left:14px;bottom:12px;font-size:11.5px;color:var(--fc-text-soft);background:rgba(255,255,255,.88);border-radius:999px;padding:5px 12px;z-index:3}
.fc-creator .kn-pv__zone{position:absolute;z-index:2}
.fc-creator .kn-pv__zonebox{position:relative;width:100%;height:100%;border:2px dashed #d8a8ce;border-radius:6px;background:rgba(200,0,167,.04);cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:visible}
.fc-creator .kn-pv__zone.is-focus .kn-pv__zonebox{border-color:var(--fc-magenta)}
.fc-creator .kn-pv__zonebox img{max-width:100%;max-height:100%;object-fit:contain;pointer-events:none}
.fc-creator .kn-pv__drop{font-family:var(--fc-font-head);font-weight:700;font-size:10.5px;color:var(--fc-text-soft);text-align:center;padding:4px}
.fc-root .kn-pv__add{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:2px dashed rgba(0,0,0,.16);border-radius:6px;background:rgba(255,255,255,.4);cursor:pointer;font-family:var(--fc-font-head);font-weight:700;font-size:11px;color:var(--fc-text-soft)}
.fc-root .kn-pv__add:hover,.fc-root .kn-pv__add:focus{background:rgba(251,234,246,.7);border-color:var(--fc-magenta);color:var(--fc-magenta)}
.fc-creator .kn-pv__chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.fc-root .kn-pv__chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--fc-font-head);font-weight:700;font-size:12px;padding:7px 12px;border-radius:999px;cursor:pointer;transition:.12s;white-space:nowrap;border:1.5px solid var(--fc-border);background:#fff;color:var(--fc-text-soft)}
.fc-root .kn-pv__chip:hover{border-color:var(--fc-cyan);background:#fff}
.fc-root .kn-pv__chip.is-on,.fc-root .kn-pv__chip.is-on:hover{border-color:var(--fc-magenta);background:#fbeaf6;color:var(--fc-magenta)}
.fc-root .kn-pv__chip.is-focus,.fc-root .kn-pv__chip.is-focus:hover{background:var(--fc-magenta);border-color:var(--fc-magenta);color:#fff}
.fc-creator .kn-pv__prods{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}
.fc-root .kn-pv__prod{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:var(--fc-r-sm);cursor:pointer;background:#fff;border:1.5px solid var(--fc-border);text-align:left}
.fc-root .kn-pv__prod:hover{border-color:var(--fc-cyan);background:#fff}
.fc-root .kn-pv__prod.is-on,.fc-root .kn-pv__prod.is-on:hover{border-color:var(--fc-magenta)}
.fc-creator .kn-pv__prod-img{flex:none;width:46px;height:46px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--fc-border);border-radius:8px;overflow:hidden}
.fc-creator .kn-pv__prod-img span{display:block;width:100%;height:100%;background:center/contain no-repeat}
.fc-creator .kn-pv__prod-tx{flex:1;min-width:0}
.fc-creator .kn-pv__prod-tx b{display:block;font-family:var(--fc-font-head);font-weight:600;font-size:12.5px;color:var(--fc-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fc-creator .kn-pv__prod-tx small{font-size:11.5px;color:var(--fc-text-soft)}
.fc-creator .kn-pv__prod-tx small b{display:inline;color:var(--fc-magenta);font-size:11.5px}
.fc-creator .kn-pv__sub{font-size:12px;color:var(--fc-text-soft);margin:0 0 12px}
/* przewidywany naklad — konwencja steppera rozmiarow (kn-size__ctl), input szerszy pod liczbe naikladu */
.fc-creator .kn-pv__qtyrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.fc-creator .kn-pv__qtyrow .kn-lbl{margin:0;text-transform:none;letter-spacing:0}
.fc-creator .kn-pv__qtyrow .kn-size__ctl input{width:72px;-moz-appearance:textfield;appearance:textfield}
.fc-creator .kn-pv__qtyrow .kn-size__ctl input::-webkit-outer-spin-button,.fc-creator .kn-pv__qtyrow .kn-size__ctl input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.fc-root .fc-creator .kn-pv__qtyrow .kn-size__ctl input:focus{border-color:var(--fc-magenta);outline:none;box-shadow:0 0 0 1px var(--fc-magenta)}
.fc-root .fc-creator .kn-pv__qtyrow .kn-size__ctl button:focus{border-color:var(--fc-magenta);color:var(--fc-magenta);outline:none}
@media (max-width:1020px){.fc-creator .kn-pv__canvas{height:420px}}

/* ===== podglad v2: pasek produktu + manipulacja grafika (przesun/obrot/skala, przyciecie ramka) ===== */
.fc-creator .kn-pv__pick .kn-pv__chips{margin-bottom:12px}
.fc-creator .kn-pv__pick .kn-pv__prods{margin-bottom:0}
.fc-creator .kn-pv__colors .kn-lbl{margin-top:12px}
.fc-creator .kn-pv__zonebox{overflow:hidden} /* grafika poza ramka = przycieta („jakby sie ucielo") */
.fc-creator .kn-pv__quadline{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.fc-creator .kn-pv__quadline polygon{fill:none;stroke:currentColor;stroke-width:2;stroke-dasharray:6 5}
.fc-creator .kn-pv__zonebox img{position:absolute;max-width:none;width:86%;height:86%;object-fit:contain;cursor:grab;pointer-events:auto}
.fc-creator .kn-pv__zonebox img:active{cursor:grabbing}
/* suwaki (wielkość/obrót grafiki) — natywny range wygląda obco; niski track + markowy thumb */
.fc-creator .kn-range{-webkit-appearance:none;appearance:none;width:100%;height:22px;margin:2px 0 6px;background:transparent;cursor:pointer}
.fc-creator .kn-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--fc-magenta) var(--fill,0%),#e4e9ec var(--fill,0%))} /* --fill ustawia JS */
.fc-creator .kn-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;margin-top:-6px;border-radius:50%;background:var(--fc-magenta);border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.fc-creator .kn-range::-moz-range-track{height:6px;border-radius:999px;background:#e4e9ec}
.fc-creator .kn-range::-moz-range-progress{height:6px;border-radius:999px;background:var(--fc-magenta)}
.fc-creator .kn-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--fc-magenta);border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.fc-creator .kn-range:focus-visible{outline:2px solid var(--fc-magenta);outline-offset:2px;border-radius:999px}

/* wybor produktu jako lista rozwijana — widac wybrany, klik pokazuje reszte */
.fc-creator .kn-pv__dd{position:relative}
.fc-creator .kn-pv__dd-btn{padding-right:38px}
.fc-creator .kn-pv__dd-chev{position:absolute;right:12px;top:50%;width:15px;height:15px;margin-top:-7px;background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A7A7A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center/15px no-repeat;transition:transform .15s;pointer-events:none}
.fc-creator .kn-pv__dd.is-open .kn-pv__dd-chev{transform:rotate(180deg)}
.fc-creator .kn-pv__dd-list{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:40;background:#fff;border:1.5px solid var(--fc-border);border-radius:var(--fc-r-sm);box-shadow:0 12px 30px rgba(0,0,0,.12);max-height:340px;overflow:auto;padding:6px}
.fc-creator .kn-pv__dd.is-open .kn-pv__dd-list{display:flex;flex-direction:column;gap:4px}
.fc-creator .kn-pv__dd-list .kn-pv__prod{border-color:transparent}
.fc-creator .kn-pv__dd-list .kn-pv__prod:hover{border-color:var(--fc-cyan)}
.fc-creator .kn-pv__dd-list .kn-pv__prod.is-on{border-color:var(--fc-magenta)}
.fc-creator .kn-pv__rmart{position:absolute;top:4px;right:4px;z-index:3;width:20px;height:20px;border-radius:50%;border:1px solid var(--fc-border);background:#fff;color:var(--fc-text-soft);cursor:pointer;font-size:13px;line-height:1;padding:0;display:flex;align-items:center;justify-content:center}
.fc-creator .kn-pv__rmart:hover{color:#c0392b;border-color:#c0392b;background:#fff}

/* ── „Zapisz jako projekt" (Moje projekty) — 3 stany wg handoffu Kreatora ── */
.fc-root .fc-saveproj,.fc-creator .fc-saveproj{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:44px;margin-top:10px;border-radius:var(--fc-r,12px);font-family:var(--fc-font-head,Poppins,sans-serif);font-weight:700;font-size:14px;transition:.15s;background:#fff;color:var(--fc-magenta,#c800a7);border:1.5px solid #f1c4e4;cursor:pointer;padding:0 14px}
.fc-root .fc-saveproj:hover,.fc-root .fc-saveproj:focus,.fc-root .fc-saveproj:active,.fc-creator .fc-saveproj:hover,.fc-creator .fc-saveproj:focus,.fc-creator .fc-saveproj:active{background:var(--fc-magenta-soft,#fbeaf6);border-color:var(--fc-magenta,#c800a7);color:var(--fc-magenta,#c800a7)}
.fc-root .fc-saveproj[disabled],.fc-root .fc-saveproj[disabled]:hover,.fc-creator .fc-saveproj[disabled],.fc-creator .fc-saveproj[disabled]:hover{background:#fff;color:#c4bfc9;border-color:var(--fc-border,#ececec);cursor:not-allowed;pointer-events:none}
.fc-root .fc-saveproj.is-saved,.fc-root .fc-saveproj.is-saved:hover,.fc-creator .fc-saveproj.is-saved,.fc-creator .fc-saveproj.is-saved:hover{background:#eafaf0;color:#0a7a3f;border-color:#bce8cf;cursor:default;pointer-events:none}
.fc-root .fc-saveproj__idle,.fc-root .fc-saveproj__done,.fc-creator .fc-saveproj__idle,.fc-creator .fc-saveproj__done{display:inline-flex;align-items:center;gap:8px}
.fc-root .fc-saveproj__idle[hidden],.fc-root .fc-saveproj__done[hidden],.fc-creator .fc-saveproj__idle[hidden],.fc-creator .fc-saveproj__done[hidden]{display:none!important}
.fc-root .fc-saveproj__msg,.fc-creator .fc-saveproj__msg{margin:8px 0 0;font-size:11.5px;color:var(--fc-text-soft,#7a7a7a);text-align:center;line-height:1.4}
.fc-root .fc-saveproj__msg.is-err,.fc-creator .fc-saveproj__msg.is-err{color:#d9453f}
.fc-root .fc-saveproj__msg a,.fc-creator .fc-saveproj__msg a{color:var(--fc-magenta,#c800a7);font-weight:700}
.fc-root .fc-saveproj__msg[hidden],.fc-creator .fc-saveproj__msg[hidden]{display:none!important}
