/* ================= КОНФИГУРАТОР VAC-2/15 ================= */
.kf-hero{padding:128px 0 34px}
.kf-hero h1{font-family:'Space Grotesk';font-weight:700;font-size:clamp(34px,5vw,60px);line-height:1.02;letter-spacing:-.02em;margin:18px 0 16px}
.kf-hero .lead{color:var(--steel);font-size:17px;max-width:760px}
.kf-facts{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.kf-fact{border:1px solid var(--line-2);border-radius:8px;padding:12px 16px;background:var(--panel)}
.kf-fact .n{font-family:'Space Grotesk';font-weight:700;font-size:20px;color:var(--text)}
.kf-fact .l{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);margin-top:2px}

.kf-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start;padding-bottom:40px}
.kf-groups{display:grid;gap:18px}
.kf-group{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}
.kf-group>header{all:unset;display:flex;gap:14px;align-items:baseline;padding:18px 22px 6px}
.kf-group .gn{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--accent-2);letter-spacing:.06em;min-width:22px}
.kf-group h2{font-family:'Space Grotesk';font-weight:600;font-size:19px;margin:0}
.kf-group .gnote{color:var(--muted);font-size:13.5px;line-height:1.55;padding:2px 22px 14px 58px;border-bottom:1px solid var(--line)}
.kf-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 22px;border-bottom:1px solid var(--line)}
.kf-row:last-child{border-bottom:0}
.kf-row .code{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--muted-2)}
.kf-row .nm{font-size:14.5px;color:var(--text);line-height:1.45}
.kf-row .pr{font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--steel);margin-top:4px}
.kf-row .hint{display:block;font-size:12px;color:var(--muted-2);margin-top:4px}
.kf-row.off .nm,.kf-row.off .pr{opacity:.45}
.kf-row.on{background:rgba(46,127,255,.06)}
.kf-ctl{display:flex;align-items:center;gap:8px;justify-self:end}
.kf-step{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:8px;overflow:hidden}
.kf-step button{width:34px;height:34px;background:transparent;border:0;color:var(--text);font-size:18px;cursor:pointer}
.kf-step button:hover:not(:disabled){background:var(--panel-2);color:var(--accent-2)}
.kf-step button:disabled{opacity:.3;cursor:not-allowed}
.kf-step output{min-width:30px;text-align:center;font-family:'JetBrains Mono',monospace;font-size:14px}
.kf-max{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted-2);white-space:nowrap}
.kf-check{width:22px;height:22px;accent-color:var(--accent);cursor:pointer}
.kf-check:disabled{cursor:not-allowed}

.kf-sum{position:sticky;top:84px;border:1px solid var(--line-2);border-radius:12px;background:var(--panel);padding:22px}
.kf-sum h2{font-family:'Space Grotesk';font-weight:600;font-size:18px;margin:0 0 4px}
.kf-code{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--muted-2)}
.kf-lines{list-style:none;margin:16px 0 0;padding:0;max-height:44vh;overflow:auto;border-top:1px solid var(--line)}
.kf-lines li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}
.kf-lines li span:first-child{color:var(--steel)}
.kf-lines li b{font-weight:500;color:var(--text);font-family:'JetBrains Mono',monospace;font-size:12.5px;white-space:nowrap}
.kf-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;padding-top:14px;border-top:1px solid var(--line-2)}
.kf-total .l{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.kf-total .v{font-family:'Space Grotesk';font-weight:700;font-size:26px;color:var(--text)}
.kf-vat{font-size:12px;color:var(--muted-2);margin-top:4px;text-align:right}
.kf-actions{display:grid;gap:10px;margin-top:18px}
.kf-actions .btn{justify-content:center;width:100%;box-sizing:border-box;font:inherit;font-family:'JetBrains Mono',monospace;font-size:13px}
.kf-actions button.btn-ghost,.kf-actions a.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line-2)}
.kf-actions button.btn-ghost:hover,.kf-actions a.btn-ghost:hover{border-color:var(--accent-2);color:var(--accent-2)}
.kf-actions button.btn-primary{border:0;cursor:pointer}
.kf-small{font-size:12px;color:var(--muted-2);line-height:1.5;margin-top:14px}
.kf-note{display:none;margin-top:12px;padding:10px 12px;border-left:3px solid var(--accent-2);background:rgba(70,216,255,.07);font-size:12.5px;color:var(--steel)}
.kf-note.show{display:block}
.kf-reset{background:none;border:0;color:var(--muted);font-size:12.5px;text-decoration:underline;cursor:pointer;padding:0;margin-top:10px}

.kf-rules{border:1px dashed var(--line-2);border-radius:10px;padding:18px 22px;color:var(--muted);font-size:13.5px}
.kf-rules h3{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);margin:0 0 10px;font-weight:500}
.kf-rules ul{margin:0;padding-left:18px;display:grid;gap:6px}

.kf-sec{padding:64px 0;border-top:1px solid var(--line-2)}
.kf-sec h2{font-family:'Space Grotesk';font-weight:700;font-size:clamp(24px,3vw,34px);margin:14px 0 18px}
.kf-inc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kf-inc div{border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:var(--panel)}
.kf-inc b{display:block;font-family:'Space Grotesk';font-weight:600;font-size:15px;margin-bottom:4px}
.kf-inc span{color:var(--muted);font-size:13.5px;line-height:1.5}
.kf-terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.kf-terms div{border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--panel)}
.kf-terms b{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2);margin-bottom:6px;font-weight:500}
.kf-terms span{color:var(--steel);font-size:14px;line-height:1.55}
.kf-why{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kf-why div{border:1px solid var(--line);border-radius:8px;padding:16px 18px;background:var(--panel)}
.kf-why b{display:block;font-family:'Space Grotesk';font-weight:600;margin-bottom:6px}
.kf-why span{color:var(--muted);font-size:14px;line-height:1.55}
.kf-disc{margin-top:26px;padding:16px 18px;border:1px solid var(--line-2);border-radius:8px;color:var(--muted);font-size:13px;line-height:1.6}
.kf-disc b{color:var(--steel)}

.kf-ask{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:32px;align-items:start}
.kf-ask .form{margin:0}

@media(max-width:1000px){
  .kf-layout{grid-template-columns:minmax(0,1fr)}
  .kf-sum{position:static}
  .kf-lines{max-height:none}
  .kf-terms{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kf-ask{grid-template-columns:minmax(0,1fr)}
}
.kf-tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:640px){
  .kf-hero{padding-top:104px}
  .kf-tw .spec-table th,.kf-tw .spec-table td{padding:9px 10px;font-size:13.5px}
  .kf-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:14px 16px}
  .kf-row .code{margin-bottom:-4px}
  .kf-ctl{justify-self:start}
  .kf-group .gnote{padding-left:22px}
  .kf-inc,.kf-terms,.kf-why{grid-template-columns:minmax(0,1fr)}
}

/* ================= ПЕЧАТЬ / PDF — коммерческое предложение ================= */
#kp{display:none}
@media print{
  @page{size:A4;margin:14mm 14mm 16mm}
  html,body{background:#fff!important;color:#111!important}
  body > *:not(#kp){display:none!important}
  #kp{display:block;font-family:'Inter',Arial,sans-serif;font-size:10.5pt;line-height:1.45;color:#111}
  #kp .kp-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #111;padding-bottom:8px;margin-bottom:14px}
  #kp .kp-brand{font-family:'Space Grotesk',Arial,sans-serif;font-weight:700;font-size:16pt;letter-spacing:.01em}
  #kp .kp-brand small{display:block;font-family:'Inter',Arial,sans-serif;font-weight:400;font-size:8.5pt;color:#555;letter-spacing:0}
  #kp .kp-contacts{text-align:right;font-size:8.5pt;color:#333;line-height:1.5}
  #kp h1{font-family:'Space Grotesk',Arial,sans-serif;font-size:15pt;margin:4px 0 2px}
  #kp .kp-sub{font-size:9.5pt;color:#444;margin-bottom:12px}
  #kp table{width:100%;border-collapse:collapse;margin:6px 0 10px}
  #kp th,#kp td{border:1px solid #bbb;padding:5px 7px;vertical-align:top;text-align:left}
  #kp thead th{background:#eee;font-size:8.5pt;text-transform:uppercase;letter-spacing:.04em}
  #kp td.num,#kp th.num{text-align:right;white-space:nowrap}
  #kp tr.base td{background:#f5f5f5;font-weight:600}
  #kp tfoot td{font-weight:700;font-size:11.5pt;background:#f0f0f0}
  #kp h2{font-family:'Space Grotesk',Arial,sans-serif;font-size:11.5pt;margin:14px 0 6px;page-break-after:avoid}
  #kp ul{margin:0 0 6px 16px;padding:0}
  #kp li{margin-bottom:2px}
  #kp .kp-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px;font-size:9.5pt}
  #kp .kp-disc{margin-top:14px;padding-top:8px;border-top:1px solid #999;font-size:8.5pt;color:#444}
  #kp .kp-link{font-size:8pt;color:#555;word-break:break-all}
  #kp tr,#kp li{page-break-inside:avoid}
}
