/* =========================================================
   КОНСТРУКТОР ПЕЧАТЕЙ (v40, v41: новая печать + по оттиску) + посадочная печатей
   Подключается через $pageHead на /pechati-shtampy.php и /zakaz-pechati.php.
   Общие классы калькулятора (.dr-grid, .dr-sum, .dr-seg, .dr-sum-total, .dr-alert…) — из style.css,
   здесь — только своё. Цвета и шрифты — токены :root из style.css.
   Разметка — inc/blocks/stamp-constructor.php, JS — assets/stamp.js
   ========================================================= */

.st-sec{position:relative;}
.st-head{max-width:760px;}
.st-head h1{font-size:clamp(30px,4.4vw,52px);}
.st-main{counter-reset:st;}
.st-form input[type=radio]{position:absolute;opacity:0;width:1px;height:1px;margin:0;}

/* ---------- шаги ---------- */
.st-step{border:2px solid var(--black);background:#fff;margin:0 0 16px;padding:18px 20px 20px;min-width:0;}
.st-step[hidden]{display:none;}
.st-step-title{float:left;width:100%;padding:0;margin:0 0 14px;display:flex;align-items:center;gap:12px;
  font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:18px;line-height:1.1;}
.st-step-title ~ *{clear:both;}   /* v46: не только первый — первый блок бывает скрыт (врач), и поля уезжали вбок */
.st-step-title::before{counter-increment:st;content:counter(st);flex:none;display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;background:var(--black);color:var(--yellow);font-family:var(--font-mono);font-size:14px;font-weight:600;transform:rotate(-4deg);}
.st-hint{margin:0 0 12px;font-size:13.5px;color:var(--grey);max-width:70ch;}

/* выбранный пункт: чёрная рамка + жёлтый наклонный маркер */
.st-kind-box,.st-org > span,.st-var-box,.st-holder-box,.st-size-box,.st-urg-box{position:relative;cursor:pointer;transition:background .15s ease;}
.st-form input:checked + .st-kind-box::after,.st-form input:checked + .st-holder-box::after,.st-form input:checked + .st-size-box::after,
.st-form input:checked + .st-urg-box::after,.st-org input:checked + span::after{
  content:"";position:absolute;right:8px;top:8px;width:12px;height:12px;background:var(--yellow);border:2px solid var(--black);transform:rotate(-8deg);}
.st-form input:focus-visible + span{outline:3px solid var(--black);outline-offset:2px;z-index:1;}

/* ---------- что заказать ---------- */
.st-kinds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 16px;}
.st-kind{display:block;position:relative;}
.st-kind-box{display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-areas:"ic name" "ic sub" "ic price";column-gap:14px;
  padding:14px 16px;background:#fff;border:2px solid var(--line);height:100%;}
.st-kind-box b{grid-area:name;font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:18px;line-height:1.1;}
.st-kind-box small{grid-area:sub;font-size:13px;color:var(--grey);}
.st-kind-price{grid-area:price;font-size:12.5px;font-weight:600;margin-top:4px;}
.st-kind-box:hover{border-color:var(--black);}
.st-kind input:checked + .st-kind-box{border-color:var(--black);background:var(--paper);}
.st-kind-ic{grid-area:ic;align-self:center;width:44px;height:44px;position:relative;}
.st-kind-ic--pechat{border-radius:50%;border:3px solid var(--black);box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 7px var(--black);}
.st-kind-ic--pechat::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;background:var(--yellow);}
.st-kind-ic--shtamp{height:26px;margin-top:9px;border:3px solid var(--black);transform:rotate(-6deg);}
.st-kind-ic--shtamp::after{content:"";position:absolute;left:6px;right:6px;top:7px;height:3px;background:var(--black);box-shadow:0 6px 0 var(--yellow);}
.st-kind-ic--faksimile::before{content:"";position:absolute;left:2px;right:2px;top:20px;height:3px;background:var(--black);transform:rotate(-14deg);}
.st-kind-ic--faksimile::after{content:"";position:absolute;right:2px;top:8px;width:14px;height:14px;border-radius:50%;background:var(--red);}

/* ---------- для кого ---------- */
.st-orgs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;background:var(--black);border:2px solid var(--black);}
.st-org{display:block;position:relative;}
.st-org > span{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 10px 12px;background:#fff;height:100%;text-align:center;}
.st-org > span b{font-size:14px;font-weight:700;line-height:1.2;}
.st-org > span img{width:40px;height:40px;}
.st-org > span:hover{background:var(--paper);}
.st-org input:checked + span{background:var(--yellow);}

/* ---------- поля ---------- */
.st-inn-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;}
.st-f{display:flex;flex-direction:column;gap:6px;min-width:0;margin-bottom:12px;}
.st-inn-row .st-f{margin-bottom:0;}
.st-f[hidden],.st-file[hidden]{display:none;}
.st-f > .mono{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink);}
.st-f > .mono small{font-family:var(--font-body);text-transform:none;letter-spacing:0;font-weight:500;color:var(--grey);font-size:12px;}
.st-f input{border:2px solid var(--black);background:#fff;padding:11px 12px;font:600 15px var(--font-body);color:var(--ink);border-radius:var(--radius);width:100%;min-width:0;}
.st-f input::placeholder{color:#9a947f;font-weight:500;}
.st-f input:focus{outline:3px solid var(--yellow);outline-offset:0;}
.st-f input[aria-invalid]{border-color:#c0392b;background:#fdf1ef;}
.st-f--big input{font:600 20px var(--font-mono);letter-spacing:.06em;font-variant-numeric:tabular-nums;padding:12px 14px;}
.st-f--wide{margin-top:14px;}
.st-autofill{margin:8px 0 14px;padding-left:22px;position:relative;font-size:13.5px;color:var(--grey);min-height:20px;}
.st-autofill::before{content:"";position:absolute;left:0;top:4px;width:11px;height:11px;border:2px solid var(--grey);transform:rotate(-8deg);}
.st-autofill.is-ok{color:var(--ink);}
.st-autofill.is-ok::before{background:var(--black);border-color:var(--black);}
.st-autofill.is-warn{color:#8a2a1e;}
.st-autofill.is-warn::before{background:#c0392b;border-color:#c0392b;}
.st-autofill.is-wait::before{background:var(--yellow);border-color:var(--black);animation:stSpin 1s linear infinite;}
@keyframes stSpin{to{transform:rotate(352deg);}}

.st-files{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;margin-top:4px;}
.st-file{position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px;border:2px dashed var(--black);background:var(--paper);cursor:pointer;flex:1 1 260px;min-width:0;}
.st-file:hover{background:var(--paper-dark);}
.st-file:focus-within{outline:3px solid var(--black);outline-offset:2px;}
.st-file input{position:absolute;opacity:0;width:1px;height:1px;}
.st-file b{display:block;font-size:14px;}
.st-file small{display:block;font-size:12.5px;color:var(--grey);overflow:hidden;text-overflow:ellipsis;}
.st-file-ic{flex:none;width:30px;height:30px;background:var(--black);position:relative;transform:rotate(-6deg);}
.st-file-ic::before,.st-file-ic::after{content:"";position:absolute;background:var(--yellow);left:50%;top:50%;}
.st-file-ic::before{width:14px;height:3px;margin:-1.5px 0 0 -7px;}
.st-file-ic::after{width:3px;height:14px;margin:-7px 0 0 -1.5px;}
.st-docs{flex:1 1 260px;min-width:0;}
.st-docs-later{margin-top:14px;}   /* v45: по оттиску — «Принесу документы при получении печати» */
.st-docs summary{cursor:pointer;font-size:13.5px;font-weight:600;padding:12px 0;text-decoration:underline;text-underline-offset:3px;}
.st-docs[open] summary{padding-bottom:8px;}

/* ---------- фильтры и галерея макетов ---------- */
.st-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;}
.st-chip{position:relative;}
.st-chip span{display:block;padding:7px 12px;border:2px solid var(--black);background:#fff;font-size:13px;font-weight:700;cursor:pointer;}
.st-chip span:hover{background:var(--paper);}
.st-chip input:checked + span{background:var(--black);color:var(--yellow);}
.st-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:0;background:#fff;border:2px solid var(--black);overflow:hidden;}
.st-var-card{display:block;position:relative;outline:1px solid var(--black);}
.st-var-card.is-hidden{display:none;}
.st-var-box{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px 10px;background:#fff;height:100%;}
.st-var-box:hover{background:var(--paper);}
.st-var-pic{display:block;width:100%;max-width:132px;aspect-ratio:1;}
.st-var-pic svg{display:block;width:100%;height:100%;}
.st-var-box b{font-size:12.5px;font-weight:700;text-align:center;line-height:1.25;}
.st-var-tag{position:absolute;left:6px;top:6px;background:var(--yellow);border:2px solid var(--black);font-size:12px;font-weight:600;text-transform:uppercase;padding:1px 5px;transform:rotate(-5deg);}
.st-var-tag--dark{background:var(--black);color:var(--yellow);}
.st-var-card input:checked + .st-var-box{background:var(--yellow);}
.st-var-card input:checked + .st-var-box .st-var-pic{background:#fff;border-radius:50%;}
.st-var-card input:checked + .st-var-box .st-var-tag{background:#fff;}
.st-var-card input:checked + .st-var-box .st-var-tag--dark{background:var(--black);}

/* ---------- оснастка, размер, срок ---------- */
.st-holders{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;background:var(--black);border:2px solid var(--black);}
.st-holder,.st-size,.st-urg-card{display:block;position:relative;}
.st-holder-box,.st-size-box,.st-urg-box{display:flex;flex-direction:column;gap:3px;padding:12px 12px 12px;background:#fff;height:100%;}
.st-holder-box img{width:100%;aspect-ratio:1;object-fit:cover;background:var(--paper);margin-bottom:6px;}
.st-holder-box b,.st-size-box b,.st-urg-box b{font-size:14px;font-weight:700;line-height:1.2;}
.st-holder-box small,.st-size-box small,.st-urg-box small{font-size:12.5px;color:var(--grey);line-height:1.35;}
.st-holder-price{margin-top:auto;padding-top:6px;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;}
.st-holder-price s{color:var(--grey);font-weight:500;}
.st-holder-badge{position:absolute;left:8px;top:8px;background:var(--red);color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;padding:2px 6px;transform:rotate(-5deg);}
.st-holder-box:hover,.st-size-box:hover,.st-urg-box:hover{background:var(--paper);}
.st-holder input:checked + .st-holder-box,.st-size input:checked + .st-size-box,.st-urg-card input:checked + .st-urg-box{background:var(--yellow);}
.st-holder input:checked + .st-holder-box small,.st-size input:checked + .st-size-box small,.st-urg-card input:checked + .st-urg-box small,
.st-holder input:checked + .st-holder-box s{color:var(--ink);}

.st-sizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;background:var(--black);border:2px solid var(--black);margin-bottom:10px;}
.st-size-pic{display:flex;align-items:center;justify-content:center;height:96px;margin-bottom:6px;background:var(--paper);}
.st-size-pic i{display:block;width:calc(var(--w) * 2.2px);height:calc(var(--h) * 2.2px);border:2px solid var(--black);background:#fff;
  background-image:linear-gradient(var(--black),var(--black));background-size:60% 3px;background-position:50% 40%;background-repeat:no-repeat;}
.st-size-box b.mono{font-family:var(--font-mono);font-weight:600;font-size:15px;}
.st-lines{display:grid;grid-template-columns:1fr;gap:0;margin:4px 0 6px;}
.st-line{margin-bottom:8px;}
.st-line input{padding:9px 12px;}
.st-frame{margin-top:6px;}

.st-urg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;background:var(--black);border:2px solid var(--black);}
.st-urg-box b{font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:20px;}
.st-urg-date{font-size:12.5px;font-weight:600;margin-top:6px;color:var(--ink);}

.st-drop{margin-bottom:0;}
.st-drop.dragover{background:var(--paper);}
.st-file.dragover{background:var(--paper-dark);border-style:solid;}   /* v46: файл тянут на зону */

/* ---------- согласование ---------- */
.st-contact{display:flex;flex-direction:column;gap:12px;}
.st-contact-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:0 0 4px 30px;}
.st-contact-row[hidden]{display:none;}
.st-contact-row .st-f{flex:1 1 240px;margin:0;}
.st-contact-row .st-f[hidden]{display:none;}
.st-contact-row .dr-seg span{padding:10px 12px;}

/* ---------- итог ---------- */
.st-sum{padding:18px;}
.st-preview{position:relative;background:var(--paper);border:2px solid var(--black);padding:18px;margin-bottom:12px;}
.st-preview-paper{display:flex;align-items:center;justify-content:center;aspect-ratio:1;}
.st-preview-paper.is-rect{aspect-ratio:auto;min-height:170px;}
.st-preview-paper svg{display:block;width:100%;height:auto;max-width:300px;}
.st-preview-tag{position:absolute;right:10px;bottom:8px;font-size:12px;font-weight:600;text-transform:uppercase;background:#fff;border:1px solid var(--line);padding:2px 6px;}
.st-var{margin:0 0 8px;font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:16px;line-height:1.15;}
.st-warn{list-style:none;margin:0 0 10px;padding:0;}
.st-warn:empty{display:none;}
.st-warn li{position:relative;padding:6px 0 6px 22px;font-size:13px;line-height:1.4;border-top:1px solid var(--line);}
.st-warn li::before{content:"";position:absolute;left:2px;top:10px;width:10px;height:10px;background:var(--yellow);border:2px solid var(--black);transform:rotate(-8deg);}
.st-sum-table td{font-size:14px;}
.st-sum-table td s{color:var(--grey);font-weight:500;margin-right:4px;}
.st-sum .dr-sum-total b{font-variant-numeric:tabular-nums;}
.st-ready{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:10px 0 14px;padding:10px 12px;background:var(--black);color:var(--paper);}
.st-ready .mono{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--grey-soft);}
.st-ready b{color:var(--yellow);font-size:14.5px;text-align:right;}
.st-submit{width:100%;justify-content:center;padding:16px 20px;font-size:15px;border-width:3px;}
.st-submit:disabled{cursor:wait;background:var(--paper-dark);}
.st-download{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:10px;border:2px solid var(--black);background:#fff;
  font:700 13px var(--font-body);text-transform:uppercase;letter-spacing:.03em;color:var(--ink);cursor:pointer;}
.st-download:hover{background:var(--yellow);}
.st-download:focus-visible{outline:3px solid var(--black);outline-offset:2px;}

/* мобильная панель итога */
.st-bar{display:none;}
.svc-sticky.st-hide{display:none !important;}
@media (max-width:900px){
  .st-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;align-items:center;justify-content:space-between;gap:12px;
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--black);color:var(--paper);transform:translateY(110%);transition:transform .2s ease;}
  .st-bar.is-on{transform:none;}
  .st-bar-pic{flex:none;display:flex;align-items:center;justify-content:center;width:52px;height:52px;background:var(--paper);}
  .st-bar-pic svg{display:block;max-width:44px;height:auto;}
  .st-bar-sum{margin-right:auto;}
  .st-bar-sum .mono{font-size:12px;color:var(--grey-soft);text-transform:uppercase;}
  .st-bar-sum b{font-family:var(--font-display);font-weight:900;font-size:22px;color:var(--yellow);margin-left:6px;}
  .st-bar .btn{padding:12px 14px;font-size:12.5px;}
  .st-sum{max-width:520px;margin:0 auto;width:100%;}
}
@media (max-width:600px){
  .st-kinds{grid-template-columns:1fr;gap:8px;}
  .st-kind-box{padding:10px 12px;grid-template-columns:40px minmax(0,1fr);}
  .st-kind-ic{width:36px;height:36px;}
  .st-kind-box b{font-size:16px;}
  .st-step{padding:14px 12px 16px;}
  .st-step-title{font-size:16px;}
  .st-orgs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .st-inn-row{grid-template-columns:1fr;}
  .st-gallery{grid-template-columns:repeat(2,minmax(0,1fr));}
  .st-holders{grid-template-columns:repeat(2,minmax(0,1fr));}
  .st-sizes,.st-urg{grid-template-columns:1fr;}
  .st-urg-box{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;}
  .st-urg-box .st-holder-price{grid-column:2;grid-row:1 / span 3;align-self:center;margin:0;padding:0 18px 0 0;}
  .st-size-box{display:grid;grid-template-columns:110px minmax(0,1fr);column-gap:12px;}
  .st-size-pic{grid-row:1 / span 3;height:70px;margin:0;}
  .st-size-pic i{width:calc(var(--w) * 1.35px);height:calc(var(--h) * 1.35px);}
  .st-contact-row{padding-left:0;}
  .st-contact-row .dr-seg{width:100%;}
  .st-preview{padding:12px;}
}
@media (prefers-reduced-motion:reduce){
  .st-autofill.is-wait::before{animation:none;}
  .st-bar{transition:none;}
}

/* =========================================================
   ПОСАДОЧНАЯ /pechati-shtampy.php
   ========================================================= */
/* преимущества — плакатная сетка */
.ps-why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;background:var(--black);border:2px solid var(--black);}
.ps-why-item{background:#fff;padding:22px 20px 20px;display:flex;flex-direction:column;gap:8px;position:relative;}
.ps-why-num{font-family:var(--font-display);font-weight:900;font-size:clamp(34px,4vw,48px);line-height:1;}
.ps-why-num small{font-size:.45em;margin-left:4px;}
.ps-why-item b{font-size:15px;font-weight:700;}
.ps-why-item p{margin:0;font-size:14px;color:var(--grey);line-height:1.45;}
.ps-why-item--accent{background:var(--yellow);}
.ps-why-item--accent p{color:var(--ink);}

/* сравнение «обычно / у нас» */
.ps-compare{width:100%;border-collapse:collapse;background:#fff;border:2px solid var(--black);font-size:14.5px;}
.ps-compare th,.ps-compare td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);}
.ps-compare thead th{font-family:var(--font-mono);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--black);}
.ps-compare thead th:last-child{background:var(--black);color:var(--yellow);}
.ps-compare tbody th{font-weight:700;width:24%;}
.ps-compare td:first-of-type{color:var(--grey);}
.ps-compare td:last-child{font-weight:600;background:var(--paper);}
.ps-compare tr:last-child th,.ps-compare tr:last-child td{border-bottom:0;}

/* тверские макеты */
.ps-tver{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:40px;align-items:center;}
.ps-tver-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;background:var(--black);border:2px solid var(--black);}
.ps-tver-cell{background:#fff;padding:12px;display:flex;flex-direction:column;align-items:center;gap:6px;margin:0;}
.ps-tver-cell > [data-st-demo]{display:block;width:100%;max-width:150px;aspect-ratio:1;}
.ps-tver-more{background:var(--black);color:var(--paper);text-decoration:none;justify-content:center;text-align:center;}
.ps-tver-more b{color:var(--paper);max-width:16ch;}
.ps-tver-more-num{font-family:var(--font-display);font-weight:900;font-size:clamp(40px,5vw,60px);line-height:1;color:var(--yellow);}
.ps-tver-more:hover{background:#2c2b26;}
.ps-tver-more:focus-visible{outline:3px solid var(--yellow);outline-offset:-5px;}
.ps-compare-wrap{overflow-x:auto;}
.ps-tver-cell svg{width:100%;max-width:150px;height:auto;}
.ps-tver-cell b{font-size:12.5px;text-align:center;}
.ps-tver-text p{max-width:60ch;}
.ps-tver-text .btn{margin-top:10px;}

@media (max-width:900px){
  .ps-why{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ps-tver{grid-template-columns:1fr;gap:24px;}
}
@media (max-width:600px){
  .ps-why{grid-template-columns:1fr;}
  .ps-why-item{padding:16px 14px;}
  .ps-compare,.ps-compare tbody,.ps-compare tr,.ps-compare th,.ps-compare td{display:block;width:100%;}
  .ps-compare thead{display:none;}
  .ps-compare tbody th{width:100%;background:var(--paper-dark);border-bottom:0;padding:10px 12px 4px;}
  .ps-compare td{padding:6px 12px;border-bottom:0;}
  .ps-compare td::before{content:attr(data-label);display:block;font-family:var(--font-mono);font-size:12px;font-weight:600;text-transform:uppercase;color:var(--grey);}
  .ps-compare td:last-child{border-bottom:1px solid var(--line);padding-bottom:12px;}
  .ps-tver-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* =========================================================
   v41: режимы «Новая печать» / «По оттиску», «Идеальное сочетание» отдельной строкой
   ========================================================= */
.st-form [hidden]{display:none !important;}
.st-kind-ic--ottisk{border-radius:50%;border:3px dashed var(--black);}
.st-kind-ic--ottisk::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;background:var(--black);transform:rotate(-8deg);}
.st-drop + .st-f--wide{margin-top:14px;}

/* «Идеальное сочетание»: на всю ширину сетки оснасток, цена в одну строку, новая — красным */
.st-holder--combo{grid-column:1 / -1;}
.st-holder--combo .st-holder-box{flex-direction:row;align-items:center;gap:16px;padding:14px 44px 14px 14px;}
.st-holder--combo .st-holder-box img{flex:none;width:96px;margin:0;}
.st-combo-text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 auto;}
.st-combo-text b{font-family:var(--font-display);font-weight:900;text-transform:uppercase;font-size:18px;line-height:1.1;}
.st-combo-price{flex:none;margin-left:auto;white-space:nowrap;display:flex;align-items:baseline;gap:10px;font-variant-numeric:tabular-nums;}
.st-combo-price s{font-size:14px;font-weight:500;color:var(--grey);text-decoration-thickness:2px;}
.st-combo-price b{font-family:var(--font-display);font-weight:900;font-size:28px;line-height:1;color:var(--red);}
.st-holder--combo input:checked + .st-holder-box .st-combo-price s{color:var(--ink);}
.st-holder--combo .st-holder-badge{left:6px;top:6px;}

/* та же акция в итоге справа */
.st-price-promo{white-space:nowrap;}
.st-price-promo b{color:var(--red);font-weight:800;}
.st-sum-table td:last-child{white-space:nowrap;}

@media (max-width:600px){
  .st-holder--combo .st-holder-box{flex-wrap:wrap;gap:10px 12px;padding-right:36px;}
  .st-holder--combo .st-holder-box img{width:72px;}
  .st-combo-text{flex:1 1 150px;}
  .st-combo-text b{font-size:16px;}
  .st-combo-price{flex:1 0 100%;margin-left:0;}
  .st-combo-price b{font-size:24px;}
}
.st-bar-sum b{white-space:nowrap;}

/* v42: меню скачивания макета (правая кнопка на «Скачать макет PNG» или на макете) */
.st-ctx{position:fixed;z-index:200;min-width:250px;background:#fff;border:2px solid var(--black);padding:4px 0;}
.st-ctx button{display:flex;align-items:baseline;justify-content:space-between;gap:14px;width:100%;padding:9px 14px;border:0;background:none;
  font:inherit;text-align:left;color:var(--ink);cursor:pointer;}
.st-ctx button b{font-family:var(--font-mono);font-weight:600;font-size:14px;}
.st-ctx button small{font-size:12.5px;color:var(--grey);}
.st-ctx button:hover,.st-ctx button:focus-visible{background:var(--yellow);outline:none;}
.st-ctx button:hover small,.st-ctx button:focus-visible small{color:var(--ink);}
.st-download:disabled{cursor:wait;background:var(--paper-dark);}

