/* «КП на эту позицию» (inc/kp.php): лист A4 на бетоне сайта; печать - только лист, чёрным по белому, сумма - синим.
   Свой файл: лист открывается отдельным документом без шапки и main.css. Шрифты - те же файлы темы. */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/plex400-cyr.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/plex400-lat.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Onest';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/onest-cyr.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Onest';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/onest-lat.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Sofia Sans Extra Condensed';font-style:normal;font-weight:600 900;font-display:swap;src:url(../fonts/sofia-cyr.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Sofia Sans Extra Condensed';font-style:normal;font-weight:600 900;font-display:swap;src:url(../fonts/sofia-lat.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--bg:#C9C6BF;--paper:#F6F5F1;--ink:#121211;--ink-2:#2A2926;--mute:#5A5853;--line:rgba(18,18,17,.18);--line-2:rgba(18,18,17,.6);
  --acc:#1E40AF;--on-acc:#F3F2EE;--disp:'Sofia Sans Extra Condensed','Arial Narrow',sans-serif;--text:'Onest','Segoe UI',sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,monospace}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.kp{margin:0;background:var(--bg);color:var(--ink);font:400 14px/1.5 var(--text);overflow-x:clip}
a{color:var(--ink);text-underline-offset:3px}

/* полоса действий: только на экране */
.kp-bar{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 16px;
  border-bottom:1px solid var(--ink);background:rgba(201,198,191,.94);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.kp-back{margin-right:auto;font:500 12px/1 var(--mono);letter-spacing:.04em;text-transform:uppercase}
.kp-btn{height:44px;padding:0 16px;border:1px solid var(--ink);background:none;color:var(--ink);font:800 20px/1 var(--disp);
  letter-spacing:.02em;text-transform:uppercase;cursor:pointer}
.kp-btn--acc{border-color:var(--acc);background:var(--acc);color:var(--on-acc)}
.kp-btn:focus-visible,.kp-back:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.kp-msg{flex-basis:100%;min-height:0;font:400 12px/1.3 var(--mono);color:var(--ink-2)}
.kp-msg:empty{display:none}
.kp-ck{flex-basis:100%;margin:0;font:400 11px/1.35 var(--mono);color:var(--ink-2)}
.kp-ck a{color:var(--ink)}

/* лист */
.kp-doc{max-width:210mm;margin:16px auto 40px;padding:28px 32px;background:var(--paper);box-shadow:0 18px 40px -24px rgba(0,0,0,.6)}
.kp-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-bottom:14px;border-bottom:2px solid var(--ink)}
.kp-logo{margin:0;font:900 34px/1 var(--disp);text-transform:uppercase;letter-spacing:.01em}
.kp-logo small{display:block;margin-top:6px;font:500 11px/1.2 var(--mono);letter-spacing:.04em;text-transform:none;color:var(--mute)}
.kp-ct{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin:0;font:400 12px/1.45 var(--mono)}
.kp-ct a:first-child{font:700 15px/1.3 var(--mono)}
.kp-doc h1{margin:20px 0 16px;font:900 40px/.95 var(--disp);text-transform:uppercase}
.kp-doc h1 small{display:block;margin-top:8px;font:400 12px/1.3 var(--mono);text-transform:none;color:var(--mute)}
.kp-doc h2{margin:22px 0 8px;font:800 22px/1 var(--disp);text-transform:uppercase}

.kp-tab{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.kp-tab th{padding:6px 8px;border-bottom:1px solid var(--line-2);font:500 10.5px/1.25 var(--mono);letter-spacing:.03em;text-transform:uppercase;
  color:var(--mute);text-align:left;vertical-align:bottom}
.kp-tab td{padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.kp-name b{display:block;font-weight:600}
.kp-name small{display:block;margin-top:2px;font:400 11px/1.3 var(--mono);color:var(--mute)}
.kp-sum{font-weight:700;white-space:nowrap}
.kp-note{margin:8px 0 0;font:400 12px/1.45 var(--mono);color:var(--ink-2)}

.kp-trips{margin:0}
.kp-trips div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid var(--line)}
.kp-trips dt{color:var(--ink-2)}
.kp-trips dd{margin:0;font-weight:600;text-align:right;font-variant-numeric:tabular-nums}
.kp-total{margin-top:12px;padding:12px 14px;border:2px solid var(--acc)}
.kp-total p{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0}
.kp-total span{font:500 12px/1.3 var(--mono);letter-spacing:.03em;text-transform:uppercase}
.kp-total b{font:900 34px/1 var(--disp);color:var(--acc);white-space:nowrap}
.kp-total .kp-total-2{margin-top:6px}
.kp-total .kp-total-2 b{font-size:22px;color:var(--ink)}

.kp-terms ul{margin:0;padding-left:18px}
.kp-terms li{margin:3px 0}
.kp-foot{margin-top:24px;padding-top:12px;border-top:1px solid var(--line-2);font:400 11px/1.5 var(--mono);color:var(--ink-2)}
.kp-foot p{margin:0 0 6px}
.kp-foot a{word-break:break-all}

.kp-tf{font:500 11px/1.3 var(--mono);letter-spacing:.03em;text-transform:uppercase;color:var(--mute);text-align:right}

/* «Закрепить цену» - только на экране */
.kp-lock{margin-top:24px;padding:18px;border:2px solid var(--acc);background:#fff}
.kp-lock h2{margin-top:0;color:var(--acc)}
.kp-lock > p{margin:0 0 12px}
.kp-lock-f{display:grid;gap:10px;max-width:460px}
.kp-fl{display:flex;flex-direction:column;gap:6px}
.kp-fl span{font:500 10.5px/1.2 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
.kp-fl input{height:48px;padding:0 14px;border:1px solid var(--ink);background:#EFEDE8;font:400 16px/1 var(--text)}
.kp-agree{display:flex;gap:10px;align-items:flex-start;font:400 13px/1.45 var(--text);color:var(--ink-2);cursor:pointer}
.kp-agree input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--acc)}
.kp-hp{display:none!important}
.kp-err{min-height:0;margin:0;font:500 12.5px/1.4 var(--mono);color:#9B1C1C}
.kp-err:empty{display:none}
.kp-lock-b{height:52px;justify-self:start}
.kp-done{margin:0;font:600 15px/1.45 var(--text);color:var(--acc)}

/* телефон: строка позиции и зоны - карточками с подписями (data-l), без прокрутки вбок */
@media (max-width:640px){
  .kp-bar{padding:8px 16px 10px}
  .kp-back{flex-basis:100%;margin:2px 0}
  .kp-btn{flex:1 1 0;min-width:0;padding:0 8px;font-size:18px}
  .kp-doc{margin:0;padding:20px 16px 28px;box-shadow:none}
  .kp-ct{align-items:flex-start}
  .kp-doc h1{font-size:34px}
  .kp-tab thead{display:none}
  .kp-tab,.kp-tab tbody,.kp-tab tr{display:block}
  .kp-tab tr{padding:6px 0;border-bottom:1px solid var(--line-2)}
  .kp-tab td{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border:0}
  .kp-tab td[data-l]::before{content:attr(data-l);font:500 11px/1.4 var(--mono);color:var(--mute)}
  .kp-tab td.kp-n{display:none}
  .kp-tab td.kp-name{display:block;padding-bottom:6px}
  .kp-tab--z td:first-child{font-weight:600}
  .kp-trips div{flex-direction:column;gap:2px}
  .kp-trips dd{text-align:left}
  .kp-total p{flex-direction:column;align-items:flex-start;gap:4px}
  .kp-tab tfoot,.kp-tab tfoot tr{display:block}
  .kp-tab tfoot td:first-child,.kp-tab tfoot .kp-tf{display:none}
  .kp-lock-b{justify-self:stretch}
}

/* печать / «Сохранить как PDF»: только лист */
@page{size:A4;margin:12mm}
@media print{
  body.kp{background:#fff;font-size:12px}
  .kp-bar,.kp-lock{display:none}
  .kp-doc{max-width:none;margin:0;padding:0;box-shadow:none;background:#fff}
  .kp-head{break-inside:avoid}
  .kp-dlv,.kp-terms,.kp-foot,.kp-total{break-inside:avoid}
  a{text-decoration:none}
  .kp-total{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
